:root{--navy:#00243d;--teal:#00b8ae;--mist:#eff8f7;--white:#fff;--muted:#526873;--line:#d7e4e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fcfdfc;color:var(--navy);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #008078;outline-offset:5px}img{max-width:100%;display:block}button{cursor:pointer}.wrap{width:min(1320px,90%);margin:auto}.skip{position:absolute;left:16px;top:-80px;background:white;padding:12px;z-index:20}.skip:focus{top:8px}.header{position:sticky;top:0;z-index:10;background:rgba(252,253,252,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:220px;height:auto}.nav-links{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:600}.nav-links a:not(.btn):hover{color:#00776f}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:50px;padding:13px 23px;background:var(--navy);color:white;border:1px solid var(--navy);border-radius:7px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.btn:hover{background:#10435c;transform:translateY(-2px)}.btn.teal{background:var(--teal);color:var(--navy);border-color:var(--teal)}.btn.light{background:transparent;color:var(--navy);border-color:#a8bfc7}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:5px;padding:8px 12px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2px;font-weight:700;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:7px;height:7px;background:var(--teal);border-radius:50%;flex-shrink:0}.intro{padding:64px 0 40px;display:grid;grid-template-columns:1.6fr 1fr;gap:60px;align-items:end}.intro h1{font-size:clamp(46px,5.9vw,85px);line-height:1.04;letter-spacing:-4px;font-weight:500;margin:22px 0 0}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;color:#008c83}.intro-copy{padding-bottom:6px;max-width:380px}.intro-copy p{font-size:16px;color:var(--muted);margin:0 0 25px}.actions{display:flex;gap:12px;flex-wrap:wrap}.scroll-scene{height:165vh;min-height:800px;position:relative}.video-stage{position:sticky;top:105px;border-radius:15px;overflow:hidden;background:var(--mist);height:min(64vh,650px);min-height:360px;isolation:isolate}.video-stage video{width:100%;height:100%;object-fit:cover;display:block}.video-stage:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(0,36,61,.75));pointer-events:none}.video-caption{position:absolute;left:30px;right:30px;bottom:24px;display:flex;align-items:end;justify-content:space-between;color:white;z-index:2;gap:20px}.video-caption p{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin:0}.video-caption strong{font:italic 29px Georgia,serif}.video-tools{display:flex;gap:16px;align-items:center}.video-toggle{border:1px solid #ffffff80;background:#00243da6;color:white;border-radius:30px;padding:7px 14px;font-size:11px}.progress{position:absolute;bottom:0;height:3px;width:100%;background:var(--teal);transform:scaleX(0);transform-origin:left;z-index:3}.micro-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:22px 0;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:1.2px;gap:12px}.section{padding:105px 0}.section-top{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:45px}.section h2,.contact h2{font-size:clamp(36px,4vw,58px);font-weight:500;line-height:1.08;letter-spacing:-2px;margin:18px 0 0}.section-top p{max-width:350px;margin:0;color:var(--muted);font-size:15px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service{min-width:0}.service-art{overflow:hidden;border-radius:12px;background:var(--mist);aspect-ratio:1.35}.service-art img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service:hover img{transform:scale(1.04)}.service h3{font-size:23px;font-weight:500;letter-spacing:-.6px;margin:22px 0 10px}.service h3 span{float:right;font-size:13px;color:#58777e;margin-top:7px}.service p{color:var(--muted);font-size:14px;line-height:1.8;margin:0}.tags{margin-top:20px;display:flex;gap:7px;flex-wrap:wrap}.tags span{font-size:10px;padding:5px 10px;border:1px solid var(--line);border-radius:30px}.local{background:var(--navy);color:white;border-radius:16px;padding:65px;display:grid;grid-template-columns:1.3fr 1fr;gap:80px;position:relative;overflow:hidden}.local h2{margin-top:20px}.local p{color:#bdd2db;font-size:15px}.local .serif{color:#60dfd3}.local-detail{align-self:center;border-left:1px solid #ffffff30;padding-left:40px}.local-detail strong{display:block;font-size:18px;font-weight:500;margin-top:20px}.local-detail strong:first-child{margin-top:0}.local-detail p{margin:6px 0 0;font-size:13px}.packages-area{background:var(--mist);margin-top:100px}.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.package{background:white;padding:35px;border:1px solid #d8e7e7;border-radius:12px;display:flex;flex-direction:column}.package:nth-child(2){border-top:4px solid var(--teal);padding-top:32px}.package .number{font-size:11px;color:#587077;letter-spacing:1px}.package h3{font-size:28px;font-weight:500;letter-spacing:-1px;margin:22px 0 8px}.package p{font-size:14px;color:var(--muted);margin:0 0 20px}.package .price{font-size:15px;font-weight:600;border-block:1px solid var(--line);padding:20px 0;color:var(--navy)}.package ul{list-style:none;padding:0;margin:0 0 30px;font-size:13px;flex:1}.package li{padding:8px 0}.package li:before{content:'↗';color:#00877e;margin-right:12px}.package .btn{width:100%}.package-note{display:flex;justify-content:space-between;align-items:center;margin-top:30px;gap:20px;font-size:14px}.text-link{border-bottom:1px solid var(--navy);padding-bottom:3px;font-size:13px;font-weight:600}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:55px}.step{border-top:1px solid #b8cdd1;padding-top:22px}.step b{font-family:Georgia,serif;font-size:30px;font-weight:400;color:#00887f}.step h3{font-size:22px;font-weight:500;margin:18px 0 10px}.step p{font-size:14px;color:var(--muted)}.faq-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;border-top:1px solid var(--line);padding-top:85px}.faq-layout h2{max-width:350px}.faqs details{border-bottom:1px solid var(--line)}.faqs summary{padding:22px 30px 22px 0;font-size:16px;cursor:pointer;list-style:none;position:relative}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:'+';position:absolute;right:0;font-size:22px;top:16px}.faqs details[open] summary:after{content:'−'}.faqs p{color:var(--muted);font-size:14px;margin:0 0 24px;max-width:560px}.contact{background:var(--navy);color:white;padding:90px 0}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.contact .serif{color:#53d6ca}.contact-copy p{color:#bdcfd6;max-width:350px;margin:25px 0;font-size:15px}.contact-copy .location{margin-top:55px;font-size:12px}.form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;color:#d8e5e9}.field input,.field select,.field textarea{width:100%;border:1px solid #476273;background:#15364d;color:white;padding:13px 14px;border-radius:5px;font-size:14px;min-width:0}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--teal);outline-offset:2px}.field input::placeholder,.field textarea::placeholder{color:#a5bac5}.field textarea{min-height:110px;resize:vertical}.full{grid-column:1/-1}.consent{font-size:11px;display:flex;align-items:start;gap:9px;color:#c6d8df}.consent input{margin-top:4px;accent-color:var(--teal)}.form .btn{justify-self:start}.privacy-note{font-size:10px;color:#b0c7d1;margin:0}.form-message{font-size:14px;background:#eff8f7;color:var(--navy);padding:15px;border-radius:5px}.form-message:empty{display:none}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.footer{padding:30px 0;background:var(--navy);color:#adc3cd;border-top:1px solid #ffffff20}.footer-row{display:flex;justify-content:space-between;gap:20px;font-size:11px}.footer a{color:white}.preview-notice{background:#f4f1df;color:var(--navy);padding:8px;text-align:center;font-size:12px}.content-page{min-height:60vh;padding:70px 0}.content-page h1{font-size:48px}.admin-bar .header{top:32px}.admin-bar .video-stage{top:137px}
@media(min-width:1600px){.intro{padding-top:80px}.intro h1{font-size:90px}}
@media(max-width:900px){.nav-links{gap:18px}.nav-links .btn{padding:10px 15px}.intro{gap:30px}.intro h1{letter-spacing:-2.7px}.section{padding:75px 0}.local{padding:40px;gap:40px}.package{padding:24px}.package:nth-child(2){padding-top:21px}.contact-grid{gap:45px}.faq-layout{gap:40px}.brand img{width:175px}.packages-area{margin-top:75px}}
@media(max-width:680px){.wrap{width:90%}.nav{height:75px}.brand img{width:180px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:75px;left:0;right:0;background:#fcfdfc;padding:25px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.intro{grid-template-columns:1fr;padding:42px 0 30px;gap:25px}.intro h1{font-size:54px;letter-spacing:-3px}.intro-copy{max-width:100%}.intro-copy p{font-size:14px;max-width:340px}.eyebrow{font-size:9px;letter-spacing:1.5px}.video-stage{top:88px;height:55vh;min-height:330px}.scroll-scene{height:140vh;min-height:700px}.video-caption{left:18px;right:18px;bottom:20px}.video-caption strong{font-size:22px}.video-caption p{font-size:8px}.video-tools{align-items:end;flex-direction:column;gap:7px}.micro-row{font-size:8px;letter-spacing:.7px;flex-wrap:wrap}.section-top{display:block;margin-bottom:30px}.section-top p{margin-top:20px}.section h2,.contact h2{font-size:42px;letter-spacing:-1.8px}.services,.packages,.steps{grid-template-columns:1fr;gap:35px}.service-art{aspect-ratio:1.6}.local{padding:30px;grid-template-columns:1fr;gap:25px}.local-detail{padding-left:0;border-left:0;border-top:1px solid #ffffff30;padding-top:25px}.packages-area{margin-top:65px}.package{padding:30px}.package:nth-child(2){padding-top:27px}.package-note{flex-direction:column;align-items:start}.steps{gap:25px}.faq-layout{grid-template-columns:1fr;gap:30px;padding-top:60px}.contact{padding:65px 0}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-copy .location{margin-top:20px}.form{gap:16px}.field{grid-column:1/-1}.footer-row{flex-wrap:wrap}.admin-bar .header{top:46px}.admin-bar .video-stage{top:134px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.scroll-scene{height:auto;min-height:0}.video-stage{position:relative;top:0!important}}
.local h2{font-size:clamp(36px,4vw,58px);font-weight:500;line-height:1.08;letter-spacing:-2px;margin:18px 0 0}
.manual-mode .video-caption{bottom:70px}@media(max-width:680px){.form .btn{grid-column:1/-1;width:100%}}
/* Full-width, scroll-controlled hero background. */
.comparison-section{padding-bottom:35px}
.website-comparison{margin:0}
.comparison-stage{position:relative;width:100%;aspect-ratio:3/2;isolation:isolate;overflow:hidden;border-radius:16px;border:1px solid var(--line);touch-action:pan-y;cursor:ew-resize;user-select:none;background:var(--mist)}
.comparison-layer{position:absolute;inset:0;background:radial-gradient(ellipse at center,#fff,var(--mist));pointer-events:none}
.comparison-layer img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.comparison-before{clip-path:inset(0 calc(100% - var(--comparison-position)) 0 0)}
/* Both views share one laptop shell; map the old screen onto its exact display bounds. */
.comparison-screen{position:absolute;left:11.783854%;top:4.394531%;width:76.627604%;height:70.703125%;overflow:hidden;pointer-events:none}
.comparison-screen img{position:absolute;max-width:none;width:128.428094%;height:133.159948%;left:-14.214047%;top:-5.071521%;object-fit:fill}
.comparison-divider{position:absolute;left:var(--comparison-position);top:0;bottom:0;width:3px;transform:translateX(-50%);background:var(--teal);pointer-events:none;box-shadow:0 0 12px #00243d30}
.comparison-divider>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:space-evenly;width:58px;height:58px;border-radius:50%;background:white;border:2px solid var(--teal);box-shadow:0 5px 20px #00243d35;color:var(--navy);font-size:30px;line-height:1}
.comparison-divider b{font-weight:400}
.comparison-badge{position:absolute;top:20px;border:1px solid #ffffff80;background:#00243de8;color:white;padding:7px 15px;border-radius:30px;font-size:12px;pointer-events:none}
.comparison-badge-before{left:20px}.comparison-badge-after{right:20px;background:#00b8aee8;color:var(--navy)}
.comparison-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.comparison-stage:focus-within{outline:3px solid #00887f;outline-offset:5px}
.website-comparison figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:18px;font-size:11px;color:var(--muted)}
@media(max-width:680px){.comparison-stage{border-radius:10px}.comparison-badge{top:10px;padding:4px 10px;font-size:10px}.comparison-badge-before{left:10px}.comparison-badge-after{right:10px}.comparison-divider>span{width:44px;height:44px;font-size:24px}.website-comparison figcaption{flex-direction:column;gap:4px}.comparison-section{padding-bottom:10px}}
.service-page-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:65px;align-items:start;padding:85px 0 65px}
.service-page-copy h1{font-size:clamp(40px,4.7vw,68px);line-height:1.08;font-weight:500;letter-spacing:-2.8px;margin:24px 0}
.service-page-copy>p{font-size:16px;color:var(--muted);max-width:560px;margin:0 0 30px}
.service-page-art{min-width:0;border-radius:15px;overflow:hidden;background:var(--mist);position:relative}
.service-page-image{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.art-caption{display:block;font-size:9px;letter-spacing:1.2px;padding:18px 24px;background:var(--mist);color:var(--navy)}
.art-kicker{font-size:9px;letter-spacing:1.5px;display:block;margin-bottom:25px}
.graphic-board,.identity-board,.kit-board{padding:28px;min-height:440px;position:relative}
.graphic-board{background:#dcefeb}.graphic-poster{background:var(--navy);color:white;padding:35px 25px 65px;width:83%;transform:rotate(-5deg);box-shadow:0 20px 30px #00243d25}
.graphic-poster>span:first-child{font-size:30px;line-height:1.1;letter-spacing:-1px;font-weight:700}
.graphic-poster strong{display:block;font:italic 55px/1.1 Georgia,serif;color:var(--teal);margin:10px 0 25px}
.graphic-poster-bottom{font-size:8px;letter-spacing:1px}
.graphic-mini{position:absolute;bottom:60px;right:20px;background:var(--teal);padding:20px;transform:rotate(7deg);box-shadow:0 10px 25px #00243d25;font-size:17px;line-height:1.1;font-weight:700}
.graphic-mini b{font-size:40px;display:block;margin-top:10px}.graphic-board .art-caption{background:none;padding:35px 0 0}
.identity-board{background:#f1f8f6}.identity-logo{background:white;border:1px solid var(--line);padding:45px 25px;border-radius:8px;margin:45px 0 30px}
.identity-type{display:flex;justify-content:space-between;align-items:center;gap:20px}.identity-type>span:first-child{font:800 80px/1 'TSS Package',Arial,sans-serif}.identity-type>span:last-child{font-size:15px;line-height:1.6}.identity-board .art-caption{padding:30px 0 0;background:none}
.kit-logo{padding:30px 10px;background:white;border:1px solid var(--line);border-radius:6px;margin-bottom:25px}
.kit-palette{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.kit-palette span{display:flex;align-items:end;padding:12px 8px;height:100px;background:var(--navy);color:white;font-size:8px;border:1px solid var(--line);border-radius:4px}
.kit-palette span:nth-child(2){background:var(--teal);color:var(--navy)}.kit-palette span:nth-child(3){background:var(--mist);color:var(--navy)}.kit-palette span:nth-child(4){background:white;color:var(--navy)}
.kit-type{display:flex;align-items:center;gap:25px;margin-top:25px}.kit-type b{font-size:48px}.kit-type>span{font-size:13px}.kit-type em{font-family:Georgia,serif;color:#007b74}.kit-board .art-caption{padding:20px 0 0;background:none}
.service-page-details{border-top:1px solid var(--line)}.service-work-link{padding:35px 0 70px}.service-page-hero~.packages-area{margin-top:0}
@media(max-width:900px){.service-page-hero{gap:30px}.service-page-copy h1{font-size:44px}.graphic-board,.identity-board,.kit-board{padding:22px}.graphic-poster>span:first-child{font-size:24px}.graphic-poster strong{font-size:45px}}
@media(max-width:680px){.service-page-hero{grid-template-columns:1fr;padding:45px 0;gap:35px}.service-page-copy h1{font-size:46px;letter-spacing:-2px}.service-page-art{max-width:100%}.graphic-board,.identity-board,.kit-board{min-height:390px}.service-page-image{aspect-ratio:1.2}}
.package.package-choice{padding:0;overflow:hidden}
.package-choice:nth-child(2){padding:0}
.package-open{border:0;background:transparent;color:var(--navy);padding:36px;text-align:left;width:100%;height:100%;min-height:240px;display:flex;flex-direction:column;align-items:start}
.package-choice-title{font-size:28px;font-weight:500;letter-spacing:-1px;margin:30px 0 45px}.package-open-label{display:flex;justify-content:space-between;gap:20px;width:100%;font-size:13px;margin-top:auto;border-top:1px solid var(--line);padding-top:20px}
.package-open:hover{background:#e1f3f1}.package-open:focus-visible{outline-offset:-6px}
body.package-modal-open{overflow:hidden}
.package-modal{padding:0;border:1px solid #ffffffad;border-radius:20px;width:min(72vw,1100px);max-width:none;height:72svh;max-height:88svh;margin:auto;background:#fcfefd;color:var(--navy);box-shadow:0 30px 100px #001c3d55;overflow:hidden}
.package-modal[open]{animation:package-zoom-in .5s cubic-bezier(.2,.8,.2,1) both}
.package-modal::backdrop{background:rgba(213,234,235,.35);backdrop-filter:blur(12px) saturate(.8);-webkit-backdrop-filter:blur(12px) saturate(.8)}
.package-modal[open]::backdrop{animation:package-glass-in .5s ease both}
.package-modal.is-closing{animation:package-zoom-out .22s ease both}
.package-modal.is-closing::backdrop{animation:package-glass-out .22s ease both}
.package-modal-shell{height:100%;display:flex;flex-direction:column;padding:32px 44px}
.package-modal-top{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;padding-bottom:20px;border-bottom:1px solid var(--line)}
.package-modal-close{background:var(--mist);color:var(--navy);border:1px solid var(--line);border-radius:50%;width:42px;height:42px;font-size:26px;line-height:1;flex-shrink:0}
.package-modal-scroll{overflow-y:auto;min-height:0;flex:1;padding:24px 8px 24px 0;overscroll-behavior:contain}
.package-modal h2{font-size:clamp(30px,3.8vw,52px);line-height:1.08;font-weight:500;letter-spacing:-1.5px;margin:0 0 22px}
.package-detail-copy{color:var(--muted);font-size:16px;max-width:650px}
.package-detail-price{padding:15px 0;border-block:1px solid var(--line);font-size:18px;font-weight:600}
.package-detail-heading{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;margin:25px 0 10px}
#package-modal-content ul{list-style:none;padding:0;margin:0;font-size:15px}
#package-modal-content li{padding:10px 0}#package-modal-content li:before{content:'↗';margin-right:14px;color:#00877e}
.package-modal-bottom{flex-shrink:0;border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.package-pagination{display:flex;gap:15px}.package-pagination button{background:none;border:0;color:var(--navy);font-size:12px;padding:10px 5px;min-height:44px}.package-pagination button:hover{color:#007e75}
.screen-reader-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes package-zoom-in{from{opacity:0;transform:scale(.86) translateY(25px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes package-zoom-out{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94)}}
@keyframes package-glass-in{from{opacity:0}to{opacity:1}}
@keyframes package-glass-out{from{opacity:1}to{opacity:0}}
@media(max-width:900px){.package-modal{width:88vw;height:78svh}.package-modal-shell{padding:25px}}
@media(max-width:680px){.package-modal{width:94vw;height:86svh;border-radius:14px}.package-modal-shell{padding:18px}.package-modal h2{font-size:34px}.package-modal-bottom{gap:8px}.package-modal-bottom>.btn{width:100%}.package-pagination{width:100%;justify-content:space-between}.package-modal-top .eyebrow{font-size:9px}.package-open{min-height:190px;padding:28px}.package-choice-title{margin:22px 0 30px}}
@media(prefers-reduced-motion:reduce){.package-modal[open],.package-modal.is-closing,.package-modal[open]::backdrop{animation:none!important}}
.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 30px}
.services .service-art{aspect-ratio:1.6}
.service-link{display:inline-block;margin-top:20px}
.brand-art{background:var(--mist);padding:30px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line)}
.brand-art-label{font-size:10px;letter-spacing:2px;color:#47636a}
.brand-logo-sample{padding:18px 0;max-width:85%;margin:auto}
.brand-logo-sample img{height:auto!important;object-fit:contain!important;transform:none!important}
.brand-art-bottom{display:flex;align-items:end;justify-content:space-between;gap:15px}
.brand-type-sample{font:44px/1 Georgia,serif}.brand-type-sample span{display:block;font:10px/1.5 Arial,sans-serif;letter-spacing:1px;margin-top:8px}
.brand-swatches{display:flex;gap:6px}.brand-swatches span{width:38px;height:48px;border:1px solid #cbdcdd;border-radius:4px;background:var(--navy)}
.brand-swatches span:nth-child(2){background:var(--teal)}.brand-swatches span:nth-child(3){background:var(--mist)}.brand-swatches span:nth-child(4){background:white}
.branding-section{padding-bottom:0}
.branding-panel{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:55px;background:var(--mist)}
.branding-panel h2{font-size:clamp(32px,3.4vw,48px)}
.branding-copy>p{max-width:600px;font-size:15px;color:var(--muted);margin:25px 0}
.branding-inquiry{border-left:1px solid #bbd3d5;padding-left:40px}
.branding-inquiry p{font-size:13px;color:var(--muted)}.branding-inquiry .branding-price{font-size:18px;color:var(--navy);margin:0 0 20px}
.branding-inquiry .btn{margin-bottom:15px}
@media(max-width:680px){.services{grid-template-columns:1fr;gap:35px}.brand-art{padding:20px}.brand-art-label{font-size:8px}.brand-type-sample{font-size:32px}.brand-swatches{gap:4px}.brand-swatches span{width:27px;height:35px}.branding-panel{grid-template-columns:1fr;padding:28px;gap:30px}.branding-inquiry{border-left:0;border-top:1px solid #bbd3d5;padding:25px 0 0}.branding-panel h2{font-size:34px}}
.nav-links a[aria-current="page"]{color:#007c74}
.work-intro{padding:85px 0 55px;display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:end}
.work-intro h1{font-size:clamp(42px,5vw,72px);line-height:1.08;letter-spacing:-3px;font-weight:500;margin:22px 0 0}
.work-intro-copy p{font-size:16px;color:var(--muted);margin:0 0 20px}
.work-intro-copy .concept-note{font-size:12px;padding-left:15px;border-left:2px solid var(--teal);margin-bottom:0}
.work-gallery{display:grid;grid-template-columns:1fr 1fr;gap:60px 32px;padding-bottom:95px}
.work-card{min-width:0}.work-image-link{display:block;position:relative;border-radius:12px;overflow:hidden;background:var(--mist);border:1px solid var(--line)}
.work-image-link img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .65s ease}
.work-image-link:hover img{transform:scale(1.035)}
.work-image-action{position:absolute;right:16px;bottom:16px;border-radius:5px;padding:9px 14px;font-size:11px;background:var(--navy);color:white;box-shadow:0 3px 15px #0002}
.work-card-meta{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;color:#53737b;margin-top:20px}
.work-card h2{font-size:29px;font-weight:500;letter-spacing:-.7px;margin:8px 0}
.work-card p{font-size:14px;color:var(--muted);max-width:460px;margin:0}
.work-cta{border-top:1px solid var(--line);padding:65px 0 90px;display:flex;align-items:center;justify-content:space-between;gap:60px}
.work-cta h2{font-size:clamp(34px,4vw,54px);font-weight:500;line-height:1.1;letter-spacing:-2px;margin:20px 0}
.work-cta p{max-width:540px;color:var(--muted);font-size:15px}.work-cta .btn{flex-shrink:0}
@media(max-width:680px){.work-intro{grid-template-columns:1fr;gap:25px;padding:50px 0 40px}.work-intro h1{font-size:44px;letter-spacing:-2px}.work-gallery{grid-template-columns:1fr;gap:38px;padding-bottom:55px}.work-card h2{font-size:26px}.work-cta{display:block;padding:45px 0 60px}.work-cta .btn{margin-top:15px}}
/* Clip sideways entrances without creating a scrolling ancestor for the sticky hero. */
body{overflow-x:clip}
.scroll-animated{transform-origin:50% 75%}
@media(prefers-reduced-motion:reduce){.scroll-animated{animation:none!important;transform:none!important;opacity:1!important}}
@media print{.scroll-animated{animation:none!important;transform:none!important;opacity:1!important}}
.hero .scroll-scene{height:200vh;min-height:1000px}
.hero .video-stage{top:92px;height:calc(100svh - 92px);min-height:540px;border-radius:0;background:var(--navy)}
.hero .video-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero .video-stage:after{inset:0;background:linear-gradient(90deg,rgba(0,22,38,.86),rgba(0,22,38,.5) 65%,rgba(0,22,38,.35));z-index:-1}
.hero .intro{height:100%;padding:70px 0 130px;align-content:center;align-items:center;position:relative;color:white}
.hero .intro h1{font-size:clamp(46px,5.9vw,85px)}
.hero .intro .serif{color:#62e3d7}
.hero .intro-copy p{color:#e0eeee}
.hero .intro .btn{background:var(--teal);border-color:var(--teal);color:var(--navy)}
.hero .intro .btn.light{background:transparent;border-color:#b6d3d7;color:white}
.hero .intro .btn:hover{background:#6ee5d9;color:var(--navy)}
.hero .video-caption{left:5%;right:5%;bottom:32px}
.admin-bar .hero .video-stage{top:124px;height:calc(100svh - 124px)}
@media(max-width:680px){.hero .video-stage{top:75px;height:calc(100svh - 75px);min-height:660px}.hero .intro{gap:25px;padding:50px 0 140px;align-content:center}.hero .intro h1{font-size:52px}.hero .intro-copy{padding:0}.hero .video-caption{bottom:25px;gap:15px}.hero .video-caption strong{font-size:19px}.hero .video-caption>p{max-width:70px;text-align:right}.admin-bar .hero .video-stage{top:121px;height:calc(100svh - 121px)}}
@media(prefers-reduced-motion:reduce){.hero .scroll-scene{height:auto;min-height:0}.hero .video-stage{position:relative;top:0}}

/* Logo-inspired package typography, bundled locally. */
@font-face{font-family:"TSS Package";src:url("fonts/Poppins-ExtraBold.ttf") format("truetype");font-style:normal;font-weight:800;font-display:swap}
.package-choice-title,.package-modal h2{font-family:"TSS Package",Arial,sans-serif;font-weight:800;letter-spacing:-.045em;line-height:1.15}

/* One shared inter-section rhythm on every screen size. */
:root{--section-gap:75px}
#main{display:flex;flex-direction:column;gap:var(--section-gap)}
#main>section{margin-block:0;padding-block:0;flex-shrink:0}
#main>.service-work-link{margin-block:0;padding-block:0}
#main>.service-page-hero:first-child,#main>.work-intro:first-child{padding-top:var(--section-gap)}
#main>.packages-area>.wrap,#main>.contact>.wrap{padding-block:var(--section-gap)}
#main .faq-layout{padding-top:0;border-top:0}
#main>.service-page-details,#main>.work-cta{border-top:0}
#main>.work-cta:last-child{padding-bottom:var(--section-gap)}

/* Calm layout: static hero and ordinary scrolling on every device. */
html{scroll-behavior:auto}
.hero .scroll-scene{height:auto;min-height:0}
.hero .video-stage,.admin-bar .hero .video-stage{position:relative;top:0;height:auto;min-height:540px}
.hero .intro{height:auto;min-height:max(540px,calc(100svh - 92px));z-index:2}
.hero .video-stage .hero-static-poster{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;z-index:0}
.hero .video-stage::after{z-index:1}
.scroll-animated{opacity:1;transform:none;animation:none}
@media(max-width:767px){.hero .intro{min-height:660px}}

/* Supporting service and process illustrations. */
.tsse-supporting-visual{display:block;overflow:hidden;border:1px solid #d7e4e5;border-radius:16px;background:#eff8f7;margin:0 0 24px;width:100%}
.tsse-supporting-visual img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:5/3;object-fit:contain}
