@charset "UTF-8";
:root{--red:#ca2027;--ink:#161616;--muted:#666;--line:#dedede;--paper:#fff;--soft:#f4f4f4;font-family:Arial,"PingFang HK","Noto Sans TC","Microsoft JhengHei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}a,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}::selection{background:var(--red);color:white}.wrap{width:min(1120px,calc(100% - 80px));margin:auto}.skip{position:absolute;top:-100px;left:20px;padding:12px;background:white;z-index:5}.skip:focus{top:10px}header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px}.brand{display:flex;gap:12px;align-items:center;font-weight:700;letter-spacing:.04em;font-size:1rem}.brand-mark{width:25px;height:30px;background:var(--red);display:block;position:relative}.brand-mark:after{content:"";position:absolute;width:12px;height:6px;background:white;left:6px;top:12px}nav{display:flex;gap:30px;align-items:center;font-size:.9rem}nav a{padding:10px 0;border-bottom:2px solid transparent}nav a[aria-current=page]{border-color:var(--red)}nav a:hover{color:var(--red)}.eyebrow{font-size:.875rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--red);margin:0 0 26px}.hero{padding:68px 0 58px;display:grid;grid-template-columns:1.35fr 1fr;gap:60px;align-items:center}.hero h1{font-size:clamp(2.9rem,5.2vw,4.7rem);line-height:1.22;letter-spacing:-.045em;margin:0 0 28px;font-weight:800}.hero h1 em{font-style:normal;color:var(--red)}.hero-copy{max-width:430px;color:var(--muted);font-size:1rem;line-height:1.9;margin:0 0 30px}.text-link{font-size:.95rem;padding-bottom:6px;border-bottom:1px solid var(--ink);display:inline-block}.text-link:hover{color:var(--red);border-color:var(--red)}.hero-art{margin:0;position:relative;padding:22px 0 0 22px}.hero-art:before{content:"";background:var(--red);width:57%;height:60%;position:absolute;top:0;left:0;z-index:-1}.hero-art img{display:block;width:100%;height:330px;object-fit:cover;filter:grayscale(1);object-position:52% 50%}.hero-art figcaption{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.75rem;line-height:1.5;letter-spacing:.04em;margin-top:12px}.section{padding:52px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.section-head h2{font-size:clamp(1.7rem,3vw,2.1rem);margin:0;letter-spacing:-.03em}.section-head p{font-size:.875rem;color:var(--muted);margin:0;line-height:1.6}.num{font-family:Arial,sans-serif;font-size:.8rem;letter-spacing:.15em;color:var(--red);display:block;margin-bottom:12px}.included{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:25px 0}.included p{margin:0;font-size:.95rem;line-height:1.65}.included small{color:var(--muted);display:block;font-size:.875rem;margin-top:5px}.plans{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;border-left:1px solid var(--line);border-top:1px solid var(--line)}.plan{padding:28px 28px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;position:relative;min-width:0}.plan.featured{background:var(--ink);color:white}.plan.featured .plan-desc,.plan.featured .annual,.plan.featured .currency{color:#c6c6c6}.plan.featured .plan-letter{color:#ff676b}.plan-letter{font-size:.8rem;color:var(--red);letter-spacing:.14em;margin-bottom:14px}.plan h3{margin:0 0 12px;font-size:1.2rem}.plan-desc{font-size:.95rem;line-height:1.75;color:var(--muted);margin:0 0 27px;min-height:3.3em}.price{font-size:2.5rem;letter-spacing:-.05em;font-weight:700;font-variant-numeric:tabular-nums;margin:0;white-space:nowrap}.currency{font-size:.8rem;letter-spacing:0;font-weight:400;color:var(--muted);margin-right:8px}.per{font-size:.8rem;font-weight:400;letter-spacing:0;margin-left:8px}.annual{font-size:.875rem;color:var(--muted);margin:12px 0 25px}.plan .text-link{font-size:.875rem;margin-top:auto;align-self:start}.plan.featured .text-link{border-color:#999}.fine{font-size:.875rem;color:var(--muted);line-height:1.8;margin:20px 0 0}.scope-note{padding:22px 25px;background:var(--soft);margin-top:28px;display:flex;gap:24px;align-items:baseline}.scope-note strong{font-size:.95rem;flex-shrink:0}.scope-note p{font-size:.9rem;line-height:1.8;margin:0;color:#555}.terms{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:21px 40px 21px 0;font-size:1rem;position:relative;font-weight:500}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:7px;top:17px;font-size:1.5rem;font-weight:300;color:var(--red)}details[open] summary:after{content:"−"}.detail-body{font-size:.95rem;line-height:1.95;color:#555;padding:0 35px 24px 0;max-width:850px}.detail-body p{margin:0 0 10px}.detail-body p:last-child{margin-bottom:0}.detail-body ul{padding-left:22px;margin:0}.detail-body li+li{margin-top:9px}.custom{background:var(--red);color:white;padding:45px;display:flex;justify-content:space-between;gap:30px;align-items:center;margin:30px 0 55px}.custom h2{font-size:clamp(1.6rem,3vw,2rem);margin:0 0 13px;letter-spacing:-.03em}.custom p{font-size:.95rem;line-height:1.8;margin:0;max-width:610px}.custom a{border-color:white;white-space:nowrap;flex-shrink:0}.custom a:hover{color:white}.contact{padding:12px 0 60px;display:flex;justify-content:space-between;gap:30px;align-items:start;scroll-margin-top:20px}.contact h2{margin:0 0 14px;font-size:1.8rem}.contact p{font-size:.95rem;line-height:1.8;color:var(--muted);margin:0}.contact-links{display:flex;flex-direction:column;gap:12px;align-items:end}.contact-links a{font-size:1rem;border-bottom:1px solid var(--ink);padding-bottom:6px}.contact-links a:hover{color:var(--red)}.contact-pending{color:var(--muted);font-size:.9rem}footer{border-top:1px solid var(--line);padding:25px 0}.footer-inner{display:flex;justify-content:space-between;gap:24px;font-size:.8rem;color:var(--muted);line-height:1.7}.bni-hero{padding:70px 0 55px;display:grid;grid-template-columns:1.35fr .85fr;gap:65px;align-items:end}.bni-hero h1{font-size:clamp(3rem,5.5vw,4.8rem);line-height:1.2;letter-spacing:-.045em;margin:0 0 24px}.bni-hero h1 em{font-style:normal;color:var(--red)}.bni-hero .hero-copy{margin:0}.term-price{border-left:3px solid var(--red);padding:10px 0 10px 28px}.term-price .price{font-size:3.6rem}.term-price .fine{margin-top:15px}.bni-list{border-top:1px solid var(--line)}.bni-item{display:grid;grid-template-columns:55px 1fr 1.35fr;gap:20px;align-items:baseline;border-bottom:1px solid var(--line);padding:27px 0}.bni-item .item-no{color:var(--red);font-size:.95rem}.bni-item h3{font-size:1.15rem;margin:0}.bni-item p{font-size:.95rem;line-height:1.85;color:var(--muted);margin:0}.bni-special{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:34px;border:1px solid var(--line);margin-top:35px;align-items:center}.bni-special h3{font-size:1.45rem;margin:0 0 15px}.bni-special p{font-size:.95rem;line-height:1.8;color:var(--muted);margin:0}.bni-special .price{color:var(--red);margin-bottom:14px}.bni-special .fine{font-size:.875rem}.bni-special .special-right{border-left:1px solid var(--line);padding-left:35px}.bni-note{max-width:850px;font-size:.9rem;line-height:1.9;color:var(--muted);margin-top:20px}.contact .eyebrow{margin-bottom:16px}
@media(min-width:1500px){.hero-art img{height:350px}}
@media(max-width:800px){.wrap{width:calc(100% - 44px)}.header-inner{min-height:80px}nav{gap:18px;font-size:.875rem}.hero{gap:30px;padding-top:45px}.hero h1{font-size:3.2rem}.hero-art img{height:280px}.plans{grid-template-columns:repeat(2,1fr)}.plan{padding:25px}.section-head{align-items:start}.bni-hero{gap:30px}.bni-hero h1{font-size:3.1rem}.term-price .price{font-size:2.6rem}.bni-item{grid-template-columns:35px 1fr 1.2fr}.custom{padding:30px}.scope-note{display:block}.scope-note p{margin-top:8px}}
@media(max-width:560px){.wrap{width:calc(100% - 36px)}.header-inner{flex-wrap:wrap;gap:5px;padding:18px 0 10px}.brand{font-size:.95rem}nav{gap:23px;width:100%;justify-content:flex-start;font-size:.875rem}.hero{display:block;padding:40px 0 32px}.eyebrow{font-size:.8rem;margin-bottom:20px}.hero h1{font-size:clamp(2.8rem,11vw,3.6rem);margin-bottom:20px}.hero-copy{margin-bottom:22px}.hero-art{margin-top:32px;padding:12px 0 0 12px}.hero-art img{height:170px}.section{padding:32px 0}.section-head{display:block;margin-bottom:22px}.section-head p{margin-top:12px}.included{gap:12px;padding:20px 0}.included p{font-size:.875rem}.included small{font-size:.8rem}.plans{margin-top:24px}.plan{padding:22px 15px}.plan h3{font-size:1.05rem}.plan-desc{font-size:.875rem;margin-bottom:20px}.price{font-size:2rem}.currency{margin-right:4px;font-size:.75rem}.per{margin-left:4px;font-size:.75rem}.annual{font-size:.8rem;margin-bottom:22px;line-height:1.6}.scope-note{padding:20px}.custom{display:block;padding:27px 24px;margin-top:22px;margin-bottom:35px}.custom a{margin-top:22px}.contact{display:block;padding-bottom:40px}.contact-links{align-items:start;margin-top:24px}.footer-inner{display:block}.footer-inner span{display:block;margin-top:6px}.bni-hero{display:block;padding:42px 0 30px}.bni-hero h1{font-size:3.1rem}.term-price{margin-top:30px;padding-left:20px}.term-price .price{font-size:3rem}.bni-item{grid-template-columns:28px 1fr;gap:12px;padding:23px 0}.bni-item p{grid-column:2}.bni-item h3{font-size:1.05rem}.bni-special{display:block;padding:25px;margin-top:24px}.bni-special .special-right{border-left:0;border-top:1px solid var(--line);padding:22px 0 0;margin-top:24px}.detail-body{padding-right:0}.fine{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}

/* Persistent navigation and the BNI-only film showcase. */
:root{scroll-padding-top:var(--header-offset,170px)}
header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
.skip{z-index:30}
.brand{min-width:0;line-height:1.55;letter-spacing:.015em}
.brand-mark{flex-shrink:0}
nav{flex-shrink:0}
.contact{scroll-margin-top:0}
.video-section{padding-top:24px}
.bni-poster{margin:0 0 36px}
.bni-poster img{display:block;width:100%;height:auto}
.video-work{margin:0;background:var(--ink);border:1px solid var(--line)}
.video-work video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--ink)}
@media(max-width:960px){.header-inner{flex-direction:column;align-items:flex-start;min-height:0;gap:5px;padding:14px 0 8px}.brand{font-size:.95rem}nav{width:100%;justify-content:flex-start}}
@media(max-width:560px){.brand{font-size:.875rem;gap:10px}.brand-mark{width:25px;height:30px}.video-section{padding-top:10px}}
@media(max-width:560px){.bni-poster{margin-bottom:24px}}
