:root{--ink:#183153;--ink-2:#0f2038;--paper:#f4f0e7;--white:#fffdf8;--coral:#ee6652;--yellow:#ffd34e;--sky:#8eced0;--line:rgba(24,49,83,.2);--radius:1.25rem;--sans:"DM Sans",sans-serif;--serif:"Fraunces",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--yellow);padding:.8rem 1rem}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.section-shell{width:min(1200px,calc(100% - 3rem));margin:auto}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(1.5rem,calc((100vw - 1200px)/2));position:sticky;top:0;z-index:50;background:rgba(244,240,231,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand,.footer-brand{display:flex;align-items:center;gap:.75rem}.brand-mark{width:48px;height:48px;display:grid;place-items:center;background:var(--ink);color:var(--yellow);border-radius:50% 50% 44% 56%/53% 45% 55% 47%;font-weight:800;letter-spacing:-.08em}.brand strong,.footer-brand strong{display:block;font-family:var(--serif);font-size:1.3rem;line-height:1}.brand small,.footer-brand small{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;margin-top:.25rem}.site-header nav{display:flex;align-items:center;gap:1.65rem;font-size:.92rem;font-weight:600}.site-header nav a:not(.nav-cta):hover{color:var(--coral)}.nav-cta{background:var(--ink);color:white;padding:.65rem 1rem;border-radius:999px}.menu-toggle{display:none;background:none;border:0;padding:.5rem}.menu-toggle>span:not(.sr-only){display:block;width:26px;height:2px;background:var(--ink);margin:5px}.hero{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(2rem,5vw,5rem);align-items:center;min-height:calc(100vh - 86px);padding-block:5rem}.eyebrow{display:flex;align-items:center;gap:.7rem;text-transform:uppercase;letter-spacing:.17em;font-size:.76rem;font-weight:700}.eyebrow span{width:30px;height:3px;background:var(--coral)}h1,h2,h3,p{margin-top:0}.hero h1,.section-heading h2,.editorial-copy h2,.quote h2,.contact h2{font-family:var(--serif);font-weight:600;line-height:.96;letter-spacing:-.045em}.hero h1{font-size:clamp(4rem,9vw,8.8rem);margin:.5rem 0 1.5rem}.hero h1 em{font-weight:500;color:var(--coral)}.hero-lead{font-size:clamp(1.15rem,2vw,1.45rem);max-width:650px}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;border-radius:999px;padding:.9rem 1.35rem;font-weight:700;border:1px solid transparent;cursor:pointer}.button-primary{background:var(--coral);color:white}.button-primary:hover{background:#d95140}.button-quiet{border-color:var(--line);background:rgba(255,255,255,.25)}.hero-poster{background:var(--yellow);min-height:570px;padding:2rem;position:relative;overflow:hidden;box-shadow:12px 12px 0 var(--ink);transform:rotate(1deg);display:flex;flex-direction:column;justify-content:space-between}.hero-poster:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:var(--coral);right:-80px;top:70px;mix-blend-mode:multiply}.poster-kicker,.poster-footer{font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;position:relative;z-index:1}.poster-type{font-family:var(--sans);font-weight:800;font-size:clamp(4.6rem,7vw,7rem);line-height:.72;letter-spacing:-.09em;position:relative;z-index:2}.poster-type i{font-family:var(--serif);font-weight:500}.poster-footer{display:flex;justify-content:space-between;border-top:2px solid;padding-top:1rem}.ink-dots{display:grid;grid-template-columns:repeat(2,28px);gap:6px;position:absolute;right:2rem;bottom:5rem}.ink-dots b{width:28px;height:28px;border-radius:50%;background:var(--ink)}.ink-dots b:nth-child(2){background:var(--coral)}.ink-dots b:nth-child(3){background:var(--sky)}.ink-dots b:nth-child(4){background:var(--white)}.crop{position:absolute;width:24px;height:24px;border-color:var(--ink)}.crop-a{left:12px;top:12px;border-left:1px solid;border-top:1px solid}.crop-b{right:12px;bottom:12px;border-right:1px solid;border-bottom:1px solid}.intro-band{background:var(--ink);color:white;display:flex;justify-content:center;gap:3rem;padding:1.1rem 2rem;text-align:center}.intro-band p{margin:0;font-family:var(--serif);font-size:1.15rem}.intro-band span{color:var(--sky)}.services{padding-block:8rem}.section-heading{display:grid;grid-template-columns:1fr 1.2fr;gap:1rem;margin-bottom:3.5rem}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{font-size:clamp(3rem,6vw,6rem);margin:0}.section-heading>p:last-child{font-size:1.1rem;max-width:450px;align-self:end}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:440px;display:flex;flex-direction:column}.service-number{font-size:.75rem;letter-spacing:.14em}.service-icon{font-family:var(--serif);font-size:3.5rem;color:var(--coral);margin:2rem 0 1rem}.service-card h3{font-family:var(--serif);font-size:1.65rem;line-height:1.1}.service-card ul{list-style:none;padding:0;margin:auto 0 0;font-size:.86rem}.service-card li{border-top:1px solid var(--line);padding:.45rem 0}.portfolio{background:var(--ink-2);color:white;padding-block:8rem}.section-heading.light>p:last-child{color:#bdc8d5}.section-heading.light .eyebrow span{background:var(--yellow)}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem}.project-card{background:var(--white);color:var(--ink);overflow:hidden}.project-card:nth-child(1){grid-column:span 7}.project-card:nth-child(2){grid-column:span 5}.project-card:nth-child(3){grid-column:3/span 8}.project-art{height:360px;padding:1.5rem;position:relative;overflow:hidden;display:flex;justify-content:space-between}.project-art span{font-weight:700}.project-art strong{font-size:clamp(2.8rem,5vw,5.5rem);line-height:.82;letter-spacing:-.07em;align-self:flex-end;position:relative;z-index:2}.project-one .project-art{background:var(--coral);color:var(--white)}.project-one .project-art:after{content:"";width:260px;height:260px;background:var(--yellow);border-radius:50%;position:absolute;right:-45px;top:35px}.project-two .project-art{background:var(--sky)}.project-two .project-art:after{content:"";position:absolute;inset:70px 0 0 45%;background:repeating-linear-gradient(90deg,var(--ink) 0 3px,transparent 3px 13px);transform:rotate(-12deg)}.project-three .project-art{background:var(--yellow)}.project-three .project-art:after{content:"";position:absolute;width:70%;height:70%;right:-10%;top:10%;border:42px solid var(--ink);border-radius:50%}.project-copy{padding:1.4rem}.project-copy p{font-size:.7rem;letter-spacing:.15em;font-weight:700;color:var(--coral);margin-bottom:.3rem}.project-copy h3{font-family:var(--serif);font-size:1.65rem;margin-bottom:.2rem}.project-copy span{font-size:.86rem;color:#5b6573}.portfolio-note{max-width:650px;margin:2rem auto 0;text-align:center;color:#bdc8d5;font-size:.9rem}.editorial{padding-block:9rem;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7rem}.editorial-visual{height:600px;position:relative}.book{position:absolute;padding:2.4rem;box-shadow:12px 16px 30px rgba(15,32,56,.22)}.book-back{width:70%;height:80%;background:var(--sky);left:0;top:5%;transform:rotate(-8deg);display:flex;justify-content:space-between}.book-back strong{font-size:5rem;writing-mode:vertical-rl}.book-front{width:70%;height:88%;background:var(--coral);color:white;right:3%;bottom:0;transform:rotate(5deg);display:flex;flex-direction:column;justify-content:space-between}.book-front strong{font-family:var(--serif);font-size:4.4rem;line-height:.9}.book-front i{color:var(--yellow)}.book-front>span{border-top:1px solid rgba(255,255,255,.6);padding-top:1rem}.editorial-copy h2{font-size:clamp(3rem,5.5vw,5.7rem)}.editorial-copy>p:not(.eyebrow){font-size:1.15rem}.editorial-list{display:grid;grid-template-columns:1fr 1fr;margin:2rem 0}.editorial-list span{border-top:1px solid var(--line);padding:.7rem 0}.text-link{display:inline-block;font-weight:700;border-bottom:2px solid var(--coral);padding-bottom:.35rem}.process{padding-block:8rem;background:var(--white)}.process-list{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.process-list li{padding:2rem;border-right:1px solid var(--line)}.process-list li:last-child{border:0}.process-list span{font-size:.8rem;color:var(--coral);font-weight:700}.process-list h3{font-family:var(--serif);font-size:1.8rem;margin:2rem 0 .5rem}.quote{padding-block:8rem;display:grid;grid-template-columns:.85fr 1.15fr;gap:8rem}.quote h2{font-size:clamp(3.4rem,6vw,6rem);margin-bottom:1rem}.quote-intro>p:not(.eyebrow){font-size:1.1rem}.quote-tip{margin-top:3rem;padding:1.2rem;border-left:4px solid var(--yellow);background:rgba(255,255,255,.45)}.quote-tip>*{display:block}.quote-form{background:var(--white);border:1px solid var(--line);padding:clamp(1.5rem,4vw,3rem);box-shadow:10px 10px 0 var(--sky)}.field{margin-bottom:1.4rem}.field label{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:2px solid var(--line);background:transparent;padding:.75rem .15rem;color:var(--ink);border-radius:0}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--coral)}.field.split{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-submit{width:100%;border:0}.copy-quote{width:100%;background:transparent;border:0;text-decoration:underline;padding:1rem;color:var(--ink);cursor:pointer}.form-status{margin:1rem 0 0;min-height:1.6rem;font-size:.9rem}.contact{background:var(--coral);color:white;padding-block:6rem}.contact-inner{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:5rem}.contact h2{font-size:clamp(3.5rem,7vw,7rem);margin:0}.contact .eyebrow span{background:var(--yellow)}.contact-copy>p{font-size:1.25rem}.contact-actions{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.button-yellow{background:var(--yellow);color:var(--ink)}.button-outline{border-color:white}.is-unset{opacity:.85}.contact code{background:rgba(0,0,0,.12);padding:.15rem .35rem}footer{background:var(--ink-2);color:white;padding:3rem max(1.5rem,calc((100vw - 1200px)/2));display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;align-items:center}footer .brand-mark{background:var(--yellow);color:var(--ink)}footer p{margin:0;color:#bdc8d5}.back-top{width:48px;height:48px;border:1px solid #738096;color:white;background:none;border-radius:50%;cursor:pointer}footer>small{grid-column:1/-1;border-top:1px solid #3e4b5d;padding-top:1rem;color:#93a0b0}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}@media(max-width:900px){.site-header nav{position:fixed;inset:86px 0 auto;background:var(--paper);padding:2rem;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.menu-toggle{display:block}.hero{grid-template-columns:1fr;padding-top:3rem}.hero-poster{min-height:500px}.section-heading{grid-template-columns:1fr}.section-heading>p:last-child{align-self:auto}.service-grid{grid-template-columns:1fr 1fr}.project-card:nth-child(n){grid-column:span 12}.editorial{grid-template-columns:1fr;gap:4rem}.editorial-visual{height:520px}.quote{grid-template-columns:1fr;gap:3rem}.contact-inner{grid-template-columns:1fr}.process-list{grid-template-columns:1fr 1fr}.intro-band{flex-direction:column;gap:.3rem}.intro-band span{font-size:.85rem}}@media(max-width:600px){.section-shell{width:min(100% - 2rem,1200px)}.brand small{display:none}.hero{min-height:auto;padding-block:3rem 4rem}.hero h1{font-size:3.7rem}.hero-poster{min-height:400px;padding:1.3rem}.poster-type{font-size:4rem}.services,.portfolio,.process,.quote{padding-block:5rem}.service-grid,.process-list{grid-template-columns:1fr}.service-card{min-height:360px}.project-art{height:280px}.editorial{padding-block:6rem;gap:3rem}.editorial-visual{height:420px}.book{padding:1.5rem}.book-front strong{font-size:3rem}.field.split{grid-template-columns:1fr}.contact-actions{align-items:stretch;flex-direction:column}.site-header{height:74px}.site-header nav{inset:74px 0 auto}.site-header nav.open{height:calc(100vh - 74px)}footer{grid-template-columns:1fr auto}footer p{grid-column:1/-1;grid-row:2}.footer-brand small{font-size:.62rem}}
