@font-face{font-family:Fraunces;src:url('assets/fonts/fraunces.ttf');font-weight:100 900;font-display:swap}@font-face{font-family:Manrope;src:url('assets/fonts/manrope.ttf');font-weight:200 800;font-display:swap}
:root{--green:#4e6248;--cream:#f6f3eb;--sage:#dce3d5;--peach:#e8bc9c;--light-olive:#a8b78f;--ink:#292526}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--green);font:16px/1.65 Manrope,sans-serif}h1,h2,h3,.serif,.logo{font-family:Fraunces,serif;font-variation-settings:'SOFT' 75,'WONK' 1;line-height:1.06;letter-spacing:-.045em;text-wrap:balance}h1,h2,h3,p{margin:0}p{text-wrap:pretty}a{color:inherit;text-underline-offset:5px}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}.wrap{max-width:1440px;margin:auto;padding:0 5.5%}.top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:25px;padding-bottom:25px;border-bottom:1px solid #4e624833}.logo{font-size:36px;font-weight:750;text-decoration:none;white-space:nowrap}.nav{display:flex;align-items:center;gap:32px;font-size:14px}.nav a{text-decoration:none;white-space:nowrap}.nav a:hover{text-decoration:underline}.eyebrow{font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 25px;background:var(--green);color:var(--cream);border:1px solid var(--green);font:600 14px Manrope;text-decoration:none;cursor:pointer;border-radius:0}.btn:hover{background:#3d4f38}.btn.light{background:var(--cream);color:var(--green)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding-top:55px;padding-bottom:65px}.hero h1{font-size:clamp(58px,6.8vw,100px);font-weight:700;margin:25px 0}.hero p{max-width:420px;margin-bottom:30px;font-size:18px}.hero img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover}.hero .caption{font-size:11px;margin-top:10px;max-width:none;margin-bottom:0}.subline{display:flex;align-items:center;gap:14px;margin-top:35px;font-size:12px}.subline:before{content:'';display:block;width:35px;height:1px;background:var(--green)}.ribbon{background:var(--sage);border-block:1px solid #4e624822;padding:24px 5.5%;text-align:center;font-size:24px;font-weight:600}.section{padding-top:85px;padding-bottom:85px}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:end;margin-bottom:45px}.section h2{font-size:clamp(38px,4.4vw,62px)}.section-head p{max-width:480px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.service{border-top:1px solid var(--green);padding-top:20px}.number{font-size:12px;letter-spacing:.12em}.service h3{font-size:32px;margin:35px 0 18px}.service p{color:var(--ink);font-size:15px}.service a{display:inline-block;margin-top:25px;font-size:14px;font-weight:650}.philosophy{background:var(--green);color:var(--cream)}.philosophy .wrap{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-top:75px;padding-bottom:75px}.philosophy h2{font-size:56px}.philosophy p{margin:20px 0}.philosophy a:focus-visible{outline-color:var(--cream)}.bigword{font-family:Fraunces;font-weight:750;font-size:clamp(64px,8vw,130px);letter-spacing:-.055em;line-height:.95}.small-note{font-size:12px;opacity:.85}.footer{display:flex;justify-content:space-between;gap:30px;padding-top:30px;padding-bottom:30px;font-size:12px}.demo{background:var(--sage);text-align:center;padding:8px 20px;font-size:12px}.demo a{margin-left:10px}.brand-title{padding-top:65px;padding-bottom:45px}.brand-title h1{font-size:clamp(70px,14vw,195px);font-weight:750}.brand-title .row{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-top:25px}.brand-title p{max-width:530px}.brand-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:25px}.brand-art{width:100%;display:block;height:100%;object-fit:cover}.brand-blocks{display:grid;grid-template-rows:1fr auto;gap:25px}.type-card{background:var(--sage);padding:38px;display:flex;flex-direction:column;justify-content:space-between;gap:35px}.type-sample{font-family:Fraunces;font-size:clamp(48px,6vw,84px);font-weight:700;font-variation-settings:'SOFT' 75,'WONK' 1;letter-spacing:-.04em;line-height:1.05}.type-card p{max-width:390px}.tag-card{background:var(--green);color:var(--cream);padding:35px;min-height:190px;display:flex;flex-direction:column;justify-content:space-between}.tag-card .logo{font-size:54px}.palette{display:grid;grid-template-columns:repeat(5,1fr);margin:35px 0 0;gap:10px}.swatch{height:125px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;font-size:12px;border:1px solid #4e624822}.swatch strong{font-size:14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%}.detail-grid h3{font-size:32px;margin-bottom:20px}.detail-grid p{margin:15px 0}.detail-grid ul{padding-left:20px}.detail-grid li{margin:10px 0}.source-links{font-size:13px}.source-links a{display:block;padding:7px 0}.preview{background:var(--sage);padding:45px;display:flex;align-items:center;justify-content:space-between;gap:35px}.preview h2{font-size:42px}.preview p{margin-top:15px;max-width:600px}.endmark{font-family:Fraunces;font-size:clamp(70px,16vw,220px);font-weight:750;letter-spacing:-.065em;line-height:1;text-align:center;padding:55px 0}.contact{padding:55px;background:var(--sage);margin-top:20px}.contact h2{margin-bottom:20px}.contact p{max-width:650px}dialog{border:1px solid var(--green);background:var(--cream);color:var(--green);max-width:520px;padding:35px}dialog::backdrop{background:#29252699}dialog h2{font-size:36px}dialog p{margin:20px 0}dialog .btn{margin-top:10px}
@media(max-width:800px){.wrap{padding-inline:6%}.top{gap:15px}.logo{font-size:30px}.nav{gap:18px}.nav .optional{display:none}.hero{gap:5%;padding-top:35px}.hero h1{font-size:58px}.hero p{font-size:16px}.hero .btn{gap:12px;padding:15px}.hero img{aspect-ratio:3/4}.section{padding-block:55px}.section-head{gap:5%}.services{gap:20px}.service h3{font-size:27px}.philosophy h2{font-size:42px}.type-card{padding:25px}.palette{gap:6px}.swatch{padding:12px}.preview{padding:30px}.brand-title{padding-top:40px}}
@media(max-width:600px){.top{padding-block:20px}.nav{font-size:12px;gap:18px}.nav .desktop{display:none}.hero{grid-template-columns:1fr;padding-block:35px;gap:30px}.hero h1{font-size:64px;max-width:340px;margin:20px 0}.hero p{font-size:17px}.hero img{aspect-ratio:4/5}.subline{margin-top:25px}.ribbon{font-size:21px;padding-block:20px}.section-head,.detail-grid,.philosophy .wrap{grid-template-columns:1fr;gap:25px}.section-head{margin-bottom:30px}.section h2{font-size:42px}.services{grid-template-columns:1fr;gap:35px}.service h3{font-size:32px;margin-top:20px}.service p{font-size:16px}.philosophy .wrap{padding-block:50px}.philosophy h2{font-size:44px}.footer{flex-direction:column;gap:10px}.brand-title .row{align-items:start;flex-direction:column}.brand-grid{grid-template-columns:1fr}.brand-blocks{grid-template-rows:auto auto}.type-card{padding:30px}.type-sample{font-size:63px}.palette{grid-template-columns:repeat(2,1fr);gap:10px}.swatch{height:115px;padding:16px}.swatch:last-child{grid-column:1/-1}.preview{align-items:start;flex-direction:column;padding:25px}.preview h2{font-size:36px}.contact{padding:25px}.demo{font-size:11px}.bigword{font-size:80px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.demo,.btn,.nav{display:none}.section{break-inside:avoid}body{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
@media(max-width:800px){.brand-grid{grid-template-columns:1fr}.brand-art{height:auto}.brand-title .row{flex-direction:column;align-items:start}.brand-title .btn{flex-shrink:0}}
@media(max-width:360px){.hero{padding-inline:6px}.type-card{padding:18px}.tag-card{padding:25px}.top{flex-wrap:wrap}.brand-grid{grid-template-columns:minmax(0,1fr)}}

/* Revision 02: dress drawings remain complete at every breakpoint. */
.hero img,.brand-art{height:auto;aspect-ratio:auto;object-fit:contain}.brand-art{align-self:center}

/* 04: alpha cutouts interact with meaningful content, not a picture frame. */
.cutout{filter:none;pointer-events:none;user-select:none;display:block;object-fit:contain}
.hero-scene{position:relative;isolation:isolate}.hero .hero-scene img{position:relative;z-index:2;width:100%;height:auto;display:block}.lean-block{position:absolute;z-index:1;left:0;top:30%;width:35%;min-height:25%;background:var(--sage);border-top:2px solid var(--green);padding:24px 15px}.hero .lean-block p{font-family:Fraunces;font-size:25px;line-height:1.16;font-weight:600;margin:0;text-wrap:balance}
.contextual-services{grid-template-columns:1fr;gap:50px}.contextual{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6%;padding-top:28px;min-height:440px}.contextual .service-copy{max-width:470px}.contextual h3{font-size:44px;margin:22px 0}.contextual p{font-size:17px}.contextual img{height:430px;width:100%;margin-top:-55px;position:relative}.contextual:nth-child(2){grid-template-columns:1fr 1fr}.contextual:nth-child(2) .service-copy{grid-column:2;grid-row:1}.contextual:nth-child(2) img{grid-column:1;grid-row:1}.occasion{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding:36px;background:var(--sage);border:0}.occasion h3{margin:20px 0 0}.occasion p{font-size:17px}.brand-art.cutout{max-height:780px;width:100%;object-fit:contain}.character-strip{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:45px}.character-strip figure{margin:0;padding:25px;border-top:1px solid var(--green)}.character-strip img{height:350px;width:100%}.character-strip figcaption{font-size:15px;margin-top:20px;text-align:center}
@media(max-width:800px){.hero .lean-block p{font-size:20px}.lean-block{padding:15px 10px}.contextual h3{font-size:38px}.contextual img{height:370px}.contextual{min-height:390px}}
@media(max-width:600px){.hero .lean-block p{font-size:20px}.hero-scene{max-width:420px;width:100%;margin:auto}.contextual,.contextual:nth-child(2){grid-template-columns:1fr;gap:20px}.contextual .service-copy,.contextual:nth-child(2) .service-copy{grid-column:1;grid-row:1}.contextual img,.contextual:nth-child(2) img{grid-column:1;grid-row:2;height:330px;margin:0 auto;width:100%}.contextual h3{font-size:38px}.contextual-services{gap:35px}.occasion{grid-template-columns:1fr;padding:25px;gap:20px}.character-strip{grid-template-columns:1fr}.character-strip img{height:330px}}

/* Revision06: complementary apricot and green figure family. */
.lean-block{background:var(--peach);color:var(--ink)}.ribbon{background:var(--peach);color:var(--ink)}.occasion.occasion-illustrated{grid-template-columns:1fr 1.15fr;align-items:center;gap:4%;background:var(--sage)}.occasion-illustrated h3{font-size:38px;margin:20px 0}.occasion-illustrated img{width:100%;height:auto;max-height:390px;object-fit:contain}.character-strip .duo{grid-column:1/-1}.character-strip .duo img{height:410px}.palette .swatch{min-height:125px;height:auto}.preview{background:var(--peach);color:var(--ink)}
@media(max-width:600px){.occasion.occasion-illustrated{grid-template-columns:1fr}.occasion-illustrated img{max-height:none;margin-top:15px}.character-strip .duo img{height:auto}}
