@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,500&display=swap');
:root{--navy:#102b40;--navy-dark:#081a29;--gold:#c79a53;--gold-bright:#e0b66d;--cream:#faf7f1;--paper:#fffdfa;--muted:#75818a;--ink:#203344;--line:#e9e4dc;--body:'DM Sans',Arial,sans-serif;--display:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;font:15px/1.75 var(--body);color:var(--ink);background:var(--paper);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:var(--gold);color:#fff}.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;left:10px;top:-80px;z-index:200;background:white;padding:8px 20px}.skip-link:focus{top:10px}.site-header{position:fixed;z-index:100;top:0;left:0;right:0;background:rgba(255,253,250,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(16,43,64,.07);transition:box-shadow .3s}.site-header.scrolled{box-shadow:0 9px 35px rgba(7,21,34,.08)}.nav-wrap{height:77px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-symbol{position:relative;color:var(--navy);font:bold 40px/1 var(--display);letter-spacing:-8px;padding-right:9px}.brand-gold{position:absolute;top:-6px;right:-7px;font:17px/1 var(--body);color:var(--gold)}.brand-name,.footer-brand{font:700 25px/1 var(--display);letter-spacing:-.7px;color:var(--navy)}.site-nav{display:flex;align-items:center;gap:32px}.nav-link{font-size:11px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;position:relative;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--gold)}.nav-link:after{content:"";position:absolute;left:0;bottom:-9px;width:0;height:2px;background:var(--gold);transition:width .25s}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-cta{font-size:11px;text-transform:uppercase;letter-spacing:1px;border:1px solid var(--gold);padding:10px 17px;font-weight:700;color:var(--navy);transition:.3s}.nav-cta:hover{background:var(--gold);color:white}.nav-cta span{margin-left:10px}.menu-toggle{display:none}.hero{position:relative;min-height:690px;height:min(790px,100svh);display:flex;align-items:center;color:#fff;background:var(--navy-dark) url('../images/hero-office.svg') center/cover no-repeat;margin-top:77px;isolation:isolate}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,17,28,.92),rgba(7,23,35,.78) 48%,rgba(8,26,41,.36));z-index:-1}.hero-content{padding-block:90px}.eyebrow,.kicker{font-size:11px;letter-spacing:3.5px;font-weight:700;color:var(--gold);text-transform:uppercase}.eyebrow-line{display:inline-block;vertical-align:middle;width:25px;height:1px;background:var(--gold);margin-right:12px}.hero h1{font:400 clamp(42px,5.4vw,77px)/1.17 var(--display);letter-spacing:-1.7px;max-width:920px;margin:26px 0}.hero h1 strong{font-weight:700}.gold-dot{color:var(--gold)}.hero p{color:#d8e0e4;max-width:575px;font-size:15px;line-height:2}.hero-buttons{display:flex;align-items:center;gap:34px;margin-top:33px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:0;padding:15px 27px;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;transition:transform .3s,box-shadow .3s,background .3s}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(0,0,0,.15)}.btn-gold{background:var(--gold);color:#fff}.btn-gold:hover{background:#b38743}.btn-navy{background:var(--navy);color:#fff}.text-link{color:white;font-size:12px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:5px}.text-link span{margin-left:13px}.scroll-indicator{position:absolute;bottom:34px;left:max(32px,calc((100% - 1160px)/2));font-size:10px;letter-spacing:2px;color:#d4dde1;display:flex;align-items:center;gap:13px}.scroll-indicator span{height:34px;width:19px;border:1px solid #9eafb5;border-radius:15px;position:relative}.scroll-indicator span:after{content:"";position:absolute;width:3px;height:8px;background:var(--gold);left:7px;top:7px;border-radius:5px;animation:scroll 1.6s infinite}.hero-side-text{position:absolute;right:25px;bottom:130px;writing-mode:vertical-rl;font-size:10px;letter-spacing:4px;color:#c0cbd0}@keyframes scroll{to{transform:translateY(10px);opacity:0}}.section{padding:112px 0}.section-heading{max-width:700px;margin:0 auto 65px}.centered{text-align:center}.section-heading h2,.creative h2,.skills h2,.careers h2,.contact-info h3{font:400 clamp(29px,3.3vw,45px)/1.25 var(--display);letter-spacing:-.7px;color:var(--navy);margin:12px 0 19px}.section-heading h2 em,.creative h2 em,.skills h2 em,.testimonials h2 em{font-weight:400;font-style:italic;color:var(--gold)}.section-heading h2 strong{font-weight:700}.section-heading p{max-width:590px;margin:0 auto;color:var(--muted);font-size:14px}.value-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:90px;row-gap:42px;max-width:975px;margin:auto}.value-card{display:flex;align-items:flex-start;gap:21px}.icon-box{width:57px;height:57px;border:1px solid #e9d8bc;color:var(--gold);font-size:28px;display:grid;place-items:center;flex-shrink:0;transform:rotate(-5deg)}.value-card h3,.service-card h3{font-size:17px;color:var(--navy);margin:0 0 7px;font-weight:700}.value-card p,.service-card p{font-size:13px;line-height:1.9;color:#75828c;margin:0}.skills{background:linear-gradient(90deg,rgba(5,17,28,.93),rgba(6,21,34,.93)),url('../images/code-pattern.svg') center/cover;color:white}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.kicker.light{color:#edc17b}.skills h2{color:white}.skills h2 em{color:var(--gold-bright)}.skills p{font-size:14px;color:#c9d5dc;margin:0 0 19px;line-height:1.95}.inline-arrow{display:inline-flex;align-items:center;gap:22px;color:var(--gold-bright);font-size:12px;font-weight:700;margin-top:14px;letter-spacing:.8px}.inline-arrow span{font-size:19px;transition:transform .2s}.inline-arrow:hover span{transform:translate(3px,-3px)}.inline-arrow.dark{color:var(--navy)}.skill{margin-bottom:30px}.skill:last-child{margin:0}.skill-label{display:flex;justify-content:space-between;font-size:12px;font-weight:600;margin-bottom:13px;letter-spacing:.5px}.skill-label span:last-child{color:var(--gold-bright)}.track{height:7px;background:#4a5e69;overflow:hidden;border-radius:20px}.track span{display:block;background:linear-gradient(90deg,#ac7d37,#e7bb72);border-radius:20px;width:0;height:100%;transition:width 1.7s cubic-bezier(.18,.6,.2,1)}.creative{background:#f3f1ee}.creative-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px;align-items:center}.creative h2{margin-bottom:24px}.creative p{font-size:14px;line-height:2;color:#727f89}.creative-image{position:relative;box-shadow:25px 25px 0 #e4dcd1}.creative-image img{width:100%;aspect-ratio:1.47;object-fit:cover}.image-sticker{position:absolute;right:-23px;bottom:26px;padding:17px 20px;background:var(--navy);color:var(--gold-bright);font-size:11px;line-height:1.6;letter-spacing:2px}.image-sticker strong{color:white;font-size:14px}.numbers{padding:53px 0;background:white}.number-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}.number strong{display:block;font:700 39px/1.3 var(--display);color:var(--gold)}.number span{font-size:11px;letter-spacing:1px;color:#818c95;text-transform:uppercase}.statement{padding:110px 20px;text-align:center;background:linear-gradient(rgba(6,23,35,.88),rgba(6,23,35,.86)),url('../images/hero-office.svg') center 55%/cover;color:#fff}.statement h2{font:400 clamp(27px,3.3vw,45px)/1.4 var(--display);margin:16px auto 27px}.statement h2 strong{color:var(--gold-bright)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.service-card{border:1px solid var(--line);padding:32px 29px;min-height:267px;transition:transform .3s,box-shadow .3s,border-color .3s;background:#fff}.service-card:hover{transform:translateY(-8px);box-shadow:0 20px 35px rgba(10,33,49,.09);border-color:#d4b88a}.service-icon{color:var(--gold);font-size:32px;line-height:1.1;display:block;margin-bottom:24px}.service-card p{margin-bottom:18px}.service-card a{color:var(--gold);font-size:12px;font-weight:700}.feature-card{background:var(--navy);color:white;position:relative}.feature-card>span{font-size:11px;letter-spacing:2px;color:var(--gold-bright)}.feature-card h3{color:white;font:400 31px/1.3 var(--display);margin-top:25px}.feature-card .round-arrow{position:absolute;right:25px;bottom:22px;border:1px solid var(--gold);border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:22px}.careers{background:#ede9e3;padding:95px 20px;text-align:center}.careers h2{margin:15px 0}.careers h2 strong{font-weight:700}.careers p{color:#75808a;margin-bottom:29px}.testimonials{padding:100px 0;background:linear-gradient(135deg,#0b1b2b,#152f43);color:white;position:relative;overflow:hidden}.testimonials:before{content:'“';position:absolute;top:-220px;left:-30px;font:650px var(--display);color:rgba(255,255,255,.025)}.testimonials .section-heading{margin-bottom:18px}.testimonials h2{color:white}.testimonial-container{display:flex;align-items:center;justify-content:space-between;gap:20px}.testimonial-content{max-width:720px;text-align:center;min-height:205px}.quote-mark{color:var(--gold);font:75px/1 var(--display);height:54px}.testimonial-content blockquote{font:italic 21px/1.65 var(--display);margin:5px 0 13px}.stars{color:var(--gold-bright);font-size:16px;letter-spacing:3px;margin-bottom:8px}.testimonial-content strong{display:block;font-size:13px}.testimonial-content>span{font-size:12px;color:#b4c5cf}.testimonial-arrow{width:43px;height:43px;border:1px solid #637786;background:transparent;color:white;font-size:30px;display:grid;place-items:center;flex-shrink:0}.testimonial-arrow:hover{background:var(--gold);border-color:var(--gold)}.testimonial-dots{display:flex;justify-content:center;gap:10px;margin-top:25px}.testimonial-dots button{width:8px;height:8px;border-radius:50%;border:0;background:#637586;padding:0}.testimonial-dots button.selected{background:var(--gold);width:22px;border-radius:7px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.contact-info h3{font-size:30px}.contact-info>p{font-size:14px;color:var(--muted);margin-bottom:35px}.contact-detail{display:flex;gap:19px;align-items:center;margin-bottom:25px}.contact-detail>span{width:44px;height:44px;background:#f3eee5;color:var(--gold);font-size:24px;display:grid;place-items:center}.contact-detail small{display:block;letter-spacing:1.7px;font-size:10px;color:#8d949a}.contact-detail a,.contact-detail div>span{font-size:13px;font-weight:600}.contact-detail a:hover{color:var(--gold)}.contact-note{border-top:1px solid var(--line);padding-top:25px;margin-top:35px;font:italic 26px/1.35 var(--display);color:var(--navy)}.contact-note strong{color:var(--gold)}.contact-form{background:#f8f6f2;padding:36px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:block;margin-bottom:19px}.contact-form label>span{display:block;font-size:11px;font-weight:700;color:var(--navy);margin-bottom:8px;letter-spacing:.5px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:13px 15px;border:1px solid #e5e1da;outline:none;color:var(--navy);background:white;border-radius:0;font-size:13px;transition:border .2s,box-shadow .2s}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(199,154,83,.11)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a4aab0}.form-note{font-size:11px;color:#8c9297;margin:0 0 22px}.form-status{font-size:12px;min-height:20px;margin-bottom:0}.footer{background:#071925;color:#d3dfe5}.footer-main{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:50px;padding:75px 0 55px}.footer-brand{font-size:39px;color:white}.footer-brand span{color:var(--gold)}.footer-main p{color:#9caeb8;font-size:13px}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 25px;align-content:start}.footer-links a{font-size:12px}.footer-links a:hover,.footer-mail a:hover{color:var(--gold)}.footer-mail>span{display:block;color:var(--gold);letter-spacing:2px;font-size:10px;margin-bottom:12px}.footer-mail a{font:19px var(--display)}.footer-bottom{border-top:1px solid #243b47;padding:21px 0;display:flex;justify-content:space-between;font-size:11px;color:#94a8b3}.footer-bottom a:hover{color:white}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*,*:after,*:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(max-width:900px){.container{width:min(100% - 42px,760px)}.nav-wrap{height:68px}.hero{margin-top:68px;min-height:650px;height:auto}.site-nav{gap:18px}.nav-link{font-size:10px;letter-spacing:.6px}.nav-cta{padding:9px}.skills-grid,.creative-grid{gap:45px}.contact-layout{gap:35px}.section{padding:85px 0}.services-grid{grid-template-columns:repeat(2,1fr)}.footer-main{gap:20px}.hero-side-text{display:none}}
@media(max-width:650px){html{scroll-padding-top:66px}.container{width:calc(100% - 38px)}.nav-wrap{height:66px}.brand-name{font-size:23px}.menu-toggle{display:flex;width:43px;height:43px;flex-direction:column;gap:5px;justify-content:center;align-items:center;background:none;border:1px solid #e4e1db;z-index:3}.menu-toggle span{width:19px;height:2px;background:var(--navy);transition:.25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}.site-nav{position:absolute;top:66px;left:0;right:0;background:#fffdfa;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 23px 23px;box-shadow:0 18px 30px rgba(0,0,0,.09);visibility:hidden;opacity:0;transform:translateY(-12px);pointer-events:none;transition:.25s}.site-nav.open{visibility:visible;opacity:1;transform:none;pointer-events:auto}.site-nav .nav-link{padding:12px 0;font-size:12px;border-bottom:1px solid var(--line)}.nav-link:after{display:none}.nav-cta{margin-top:13px;text-align:center}.hero{margin-top:66px;min-height:620px}.hero-content{padding-block:65px 100px}.hero h1{font-size:clamp(39px,10vw,61px);letter-spacing:-1px}.hero p{font-size:14px}.hero-buttons{align-items:flex-start;flex-direction:column;gap:22px}.scroll-indicator{bottom:20px;left:19px}.section{padding:73px 0}.section-heading{margin-bottom:44px}.section-heading h2,.creative h2,.skills h2{font-size:34px}.value-grid,.skills-grid,.creative-grid,.contact-layout{grid-template-columns:1fr;gap:33px}.value-grid{row-gap:29px}.value-card{gap:16px}.icon-box{height:47px;width:47px;font-size:23px}.skills-grid{gap:40px}.creative-image{margin-right:14px}.number-grid{grid-template-columns:repeat(2,1fr);gap:29px 10px}.number strong{font-size:32px}.statement{padding:85px 15px}.statement h2{font-size:29px}.services-grid{grid-template-columns:1fr;gap:15px}.service-card{min-height:225px}.careers{padding:75px 20px}.testimonial-content blockquote{font-size:17px}.testimonial-arrow{width:30px;height:35px;font-size:22px}.testimonial-container{gap:8px}.contact-form{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.footer-main{grid-template-columns:1fr;gap:35px;padding:52px 0 35px}.footer-bottom{gap:15px;flex-wrap:wrap}.footer-mail a{font-size:18px}}

.brand-logo{height:47px;width:47px;object-fit:contain;flex-shrink:0}

/* Wordsage motion upgrade: local cinematic banner video and polished interactions */
.hero{background-image:url('../video/hero-poster.png');overflow:hidden}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:-3;transform:scale(1.02)}
.hero-overlay{z-index:-1;background:linear-gradient(90deg,rgba(3,15,27,.91),rgba(8,29,45,.75) 48%,rgba(9,29,46,.49)),linear-gradient(0deg,rgba(4,14,25,.55),transparent 47%)}
.hero-light{position:absolute;z-index:-2;pointer-events:none;border-radius:50%;filter:blur(18px);opacity:.32;mix-blend-mode:screen}
.hero-light-one{width:38vw;height:38vw;top:-20%;right:-12%;background:radial-gradient(circle,rgba(224,182,109,.45),transparent 72%);animation:orb-drift 13s ease-in-out infinite alternate}
.hero-light-two{width:26vw;height:26vw;bottom:-22%;left:28%;background:radial-gradient(circle,rgba(105,153,184,.33),transparent 70%);animation:orb-drift 18s ease-in-out infinite alternate-reverse}
@keyframes orb-drift{from{transform:translate3d(-20px,10px,0)}to{transform:translate3d(38px,-32px,0)}}
.hero-intro .eyebrow{animation:hero-enter .9s .12s both}
.hero-intro h1{animation:hero-enter 1s .24s both}
.hero-intro>p{animation:hero-enter 1s .4s both}
.hero-intro .hero-buttons{animation:hero-enter 1s .56s both}
@keyframes hero-enter{from{opacity:0;transform:translateY(28px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.hero-intro .reveal{opacity:1;transform:none}
.stagger-children>.reveal:nth-child(2){transition-delay:.11s}
.stagger-children>.reveal:nth-child(3){transition-delay:.2s}
.stagger-children>.reveal:nth-child(4){transition-delay:.29s}
.stagger-children>.reveal:nth-child(5){transition-delay:.37s}
.stagger-children>.reveal:nth-child(6){transition-delay:.45s}
.value-card,.service-card,.creative-image{will-change:transform}
.value-card{transition:transform .35s ease}
.value-card:hover{transform:translateY(-5px)}
.value-card:hover .icon-box{background:var(--navy);border-color:var(--navy);color:var(--gold-bright);transform:rotate(4deg) scale(1.04)}
.icon-box{transition:transform .35s,background .35s,color .35s,border-color .35s}
.service-card:hover .service-icon{animation:icon-bob .6s ease both}
@keyframes icon-bob{50%{transform:translateY(-6px) rotate(-8deg)}}
.btn{position:relative;overflow:hidden}
.btn:after{content:"";position:absolute;inset:-65% auto -65% -50%;width:22%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);transform:skewX(-22deg);transition:left .65s ease;pointer-events:none}
.btn:hover:after{left:125%}
@media(max-width:650px){.hero-light-one{width:70vw;height:70vw}.hero-light-two{width:60vw;height:60vw}.stagger-children>.reveal{transition-delay:0s!important}}
@media(prefers-reduced-motion:reduce){.hero-video,.hero-light{display:none!important}.hero-intro .eyebrow,.hero-intro h1,.hero-intro>p,.hero-intro .hero-buttons{animation:none!important}.btn:after{display:none}}

/* Legal pages — match the existing Wordsage design system. */
.legal-banner{margin-top:77px;min-height:240px;display:flex;align-items:center;background:linear-gradient(100deg,rgba(7,25,39,.93),rgba(16,43,64,.86)),url('../images/hero-office.svg') center/cover;color:#fff}
.legal-banner .kicker{color:var(--gold-bright)}.legal-banner h1{font:700 clamp(35px,5vw,58px)/1.15 var(--display);margin:12px 0 0}
.legal-content{padding:75px 0 105px;background:#fff}.legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:64px;align-items:start}.legal-body{max-width:840px}.legal-body .legal-intro{font-size:16px;color:#536475;margin:0 0 37px}.legal-body h2{font:700 23px/1.35 var(--display);color:var(--navy);margin:36px 0 12px}.legal-body h3{font-size:16px;color:var(--navy);margin:25px 0 7px}.legal-body p,.legal-body li{font-size:14px;line-height:1.9;color:#4d606c}.legal-body ul{padding-left:22px}.legal-body li{margin:5px 0}.legal-body a{color:#976b2f;text-decoration:underline;text-underline-offset:3px}.legal-body a:hover{color:var(--navy)}.legal-meta{border-left:3px solid var(--gold);padding:13px 17px;background:var(--cream);color:#536475;font-size:12px;margin-bottom:22px}.legal-toc{position:sticky;top:105px;border:1px solid var(--line);padding:23px;background:var(--cream)}.legal-toc strong{display:block;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--navy);margin-bottom:13px}.legal-toc a{display:block;font-size:12px;padding:7px 0;color:#62717d;border-bottom:1px solid var(--line)}.legal-toc a:hover{color:var(--gold)}.legal-body section{scroll-margin-top:110px}.legal-footer-note{font-size:12px;color:#6d7c83;padding-top:24px;border-top:1px solid var(--line);margin-top:35px}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr;gap:25px}.legal-toc{position:static;order:-1;display:flex;flex-wrap:wrap;column-gap:18px}.legal-toc strong{width:100%}.legal-toc a{border:0;padding:3px 0}.legal-banner{margin-top:68px}}@media(max-width:650px){.legal-banner{margin-top:66px;min-height:200px}.legal-content{padding:45px 0 70px}.legal-body h2{font-size:21px}.legal-body p,.legal-body li{font-size:13px}}

/* Hidden anti-spam field, inaccessible during normal navigation. */
.contact-honeypot { position:absolute !important; left:-10000px !important; width:1px; height:1px; overflow:hidden; }
.contact-form button:disabled { opacity:.65; cursor:wait; }
