:root{--ink:#1e211d;--sage:#788371;--moss:#43503f;--cream:#f7f2ea;--sand:#e6d8c7;--clay:#b97555;--line:rgba(30,33,29,.16);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 var(--sans)}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:9;background:#fff;padding:.7rem}.concept-bar{background:var(--ink);color:#f3e9da;text-align:center;padding:.5rem 1rem;font-size:.68rem;letter-spacing:.16em;font-weight:700}.concept-bar span{color:#c8956d;padding:0 .5rem}.site-header{height:82px;max-width:1240px;padding:0 5vw;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;gap:.5rem;align-items:center;color:var(--ink);text-decoration:none;font-size:1rem;letter-spacing:.13em;font-weight:700;line-height:.85}.brand small{display:block;font-size:.43rem;letter-spacing:.28em;margin-top:.43rem}.brand-mark{font:italic 1.5rem/1 var(--serif);border:1px solid var(--ink);border-radius:50%;height:31px;width:31px;display:grid;place-items:center;letter-spacing:0}.site-header nav{display:flex;gap:2.1rem;font-size:.8rem}.site-header nav a,footer>a{color:var(--ink);text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:1rem 1.25rem;background:var(--moss);color:white;text-decoration:none;font-size:.78rem;font-weight:600;letter-spacing:.04em;border:1px solid var(--moss);transition:.2s}.button:hover{background:var(--ink);transform:translateY(-2px)}.button span{font-size:1.1rem}.button-small{padding:.7rem .9rem;font-size:.71rem}.hero{max-width:1240px;margin:0 auto;padding:3.5rem 5vw 5rem;display:grid;grid-template-columns:1fr 1.02fr;align-items:center;gap:4vw}.eyebrow{font-size:.68rem;letter-spacing:.18em;font-weight:700;margin:0 0 1.3rem;color:#626a5f}.hero h1,h2{font:600 clamp(3.15rem,6vw,5.9rem)/.97 var(--serif);letter-spacing:-.055em;margin:0}.hero h1 em,h2 em{font-weight:600;color:var(--clay)}.lede{max-width:390px;font-size:1rem;margin:1.6rem 0 2rem;color:#4d514b}.hero-actions{display:flex;align-items:center;gap:1.5rem}.text-link{color:var(--ink);font-size:.8rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2rem}.text-link span{padding-left:.5rem}.hero-note{display:flex;align-items:center;gap:.7rem;font-size:.72rem;line-height:1.35;margin-top:3.7rem}.sun{font-size:1.5rem;color:var(--clay)}.hero-visual{height:min(50vw,540px);min-height:430px;background:#d3d9c7;position:relative;overflow:hidden}.arch{position:absolute;width:70%;height:90%;bottom:-28%;left:17%;border-radius:50% 50% 0 0;background:#f2e4d5}.sun-disc{position:absolute;width:40%;aspect-ratio:1;background:#d99b78;border-radius:50%;top:12%;right:10%;opacity:.9}.bottle{position:absolute;background:#b36d51;z-index:2;box-shadow:10px 14px 20px rgba(84,71,47,.14)}.bottle-tall{height:45%;width:17%;bottom:13%;left:26%;border-radius:7px 7px 25px 25px}.bottle-tall:before{content:"";position:absolute;width:56%;height:20%;background:#f4e6d5;top:-18%;left:22%;border-radius:3px}.bottle-round{height:26%;width:24%;bottom:14%;right:19%;border-radius:48% 48% 22% 22%;background:#6a765f}.bottle-round:before{content:"";position:absolute;width:35%;height:20%;background:#31412f;top:-15%;left:32%}.shadow-oval{position:absolute;bottom:9%;left:19%;height:8%;width:64%;border-radius:50%;background:rgba(77,73,55,.18)}.hero-visual p{position:absolute;z-index:3;right:6%;bottom:5%;font:italic 1rem var(--serif);color:white;text-align:right}.intro-band{background:var(--moss);color:#f6efe5;min-height:120px;display:flex;align-items:center;justify-content:center;gap:2.3rem;padding:2rem 5vw;text-align:center}.intro-band p{font:600 clamp(1rem,2vw,1.45rem)/1.35 var(--serif);letter-spacing:.03em;max-width:660px;margin:0}.intro-band span{color:#e0a77e}.section{padding:7rem 5vw;max-width:1240px;margin:auto}.section-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:3rem}.section-heading>p{max-width:355px;margin:0;color:#545750;font-size:.9rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.service-card{background:#fff;min-width:0}.card-image{height:230px;position:relative;overflow:hidden;padding:1.2rem;color:#fff;font:italic 1.1rem var(--serif)}.card-one .card-image{background:#a2ad99}.card-two .card-image{background:#d4af93}.card-three .card-image{background:#596854}.orb{height:160px;width:160px;border-radius:50%;position:absolute;bottom:-30px;right:20%;background:#f3e4d0;box-shadow:-65px -48px 0 17px #73816d}.line-art{position:absolute;font:10rem/1 var(--serif);bottom:-38px;right:13%;color:#f7eddf;transform:rotate(-20deg)}.petal{position:absolute;font:10rem/1 var(--serif);color:#e9cbb2;bottom:-45px;right:15%;transform:rotate(19deg)}.card-body{padding:1.5rem}.card-body h3{font:600 1.55rem var(--serif);margin:0 0 .5rem}.card-body p{font-size:.84rem;color:#64655f;min-height:52px;margin:0 0 1.4rem}.card-body a{font-size:.76rem;color:var(--ink);font-weight:700;text-decoration:none}.card-body a span{margin-left:.5rem}.disclaimer{font-size:.68rem;color:#72736c;margin:1.2rem 0 0}.about{max-width:none;background:#e5d9ca;display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding-left:max(5vw,calc((100vw - 1140px)/2));padding-right:max(5vw,calc((100vw - 1140px)/2));align-items:center}.about-image{min-height:500px;position:relative}.portrait-shape{height:100%;min-height:500px;background:#7d8a76;position:relative;overflow:hidden}.portrait-sun{height:280px;width:280px;border-radius:50%;position:absolute;top:11%;left:20%;background:#dec0a6}.portrait-figure{position:absolute;width:47%;height:66%;bottom:-8%;left:31%;background:#3d493e;border-radius:48% 48% 0 0}.portrait-figure:before{content:"";position:absolute;background:#a9755d;width:55%;aspect-ratio:1;border-radius:50%;top:-23%;left:22%}.portrait-figure:after{content:"";position:absolute;background:#29382e;width:120%;height:32%;top:-27%;left:-9%;border-radius:50% 50% 30% 30%}.image-caption{position:absolute;bottom:1.2rem;left:1.2rem;color:#fff;font:italic 1.15rem var(--serif)}.about-copy{max-width:450px}.about-copy>p:not(.eyebrow){color:#55584f}.about-copy .text-link{display:inline-block;margin:1rem 0 3rem}.pullquote{border-left:2px solid var(--clay);padding-left:1rem;font:italic 1.05rem/1.4 var(--serif);max-width:350px}.process{text-align:center}.process h2{margin-bottom:3.5rem}.steps{display:grid;grid-template-columns:repeat(3,1fr);text-align:left;border-top:1px solid var(--line)}.steps article{padding:1.8rem 2rem 0;border-right:1px solid var(--line)}.steps article:first-child{padding-left:0}.steps article:last-child{border:none}.steps span{color:var(--clay);font:italic 1.1rem var(--serif)}.steps h3{font:600 1.35rem var(--serif);margin:1.5rem 0 .6rem}.steps p{font-size:.84rem;color:#62645e;margin:0}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:#f1ece3;max-width:none;padding-left:max(5vw,calc((100vw - 1140px)/2));padding-right:max(5vw,calc((100vw - 1140px)/2))}.faq-copy p:last-child{max-width:320px;color:#5d6058;font-size:.88rem}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:1.25rem 0}summary{cursor:pointer;list-style:none;font:600 1.1rem var(--serif);display:flex;justify-content:space-between;gap:1rem}summary::-webkit-details-marker{display:none}summary span{font:1.4rem var(--sans);color:var(--clay)}details[open] summary span{transform:rotate(45deg)}details p{font-size:.84rem;color:#65665f;max-width:520px;margin:.8rem 2rem .1rem 0}.book{background:#bd7558;color:#fff;display:grid;grid-template-columns:1fr .75fr;gap:8vw;padding:6rem max(5vw,calc((100vw - 1140px)/2));align-items:center}.book .eyebrow{color:#f6dac6}.book h2{color:#fff}.book h2 em{color:#f9e8d6}.book>div>p:last-child{max-width:405px;font-size:.9rem;color:#fff0e4}.book-card{padding:2rem;background:#f5ecdf;color:var(--ink);min-height:250px;display:flex;flex-direction:column;align-items:flex-start}.book-star{color:var(--clay);font-size:1.6rem}.book-card p{font-size:.65rem;font-weight:700;letter-spacing:.15em;margin:1rem 0 .3rem}.book-card h3{font:600 1.9rem/1.1 var(--serif);margin:0 0 1.5rem}.button-light{background:var(--moss)}.book-card small{font-size:.62rem;color:#6f716a;margin-top:.7rem}footer{max-width:1240px;margin:auto;padding:2.3rem 5vw;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.72rem;color:#6a6c65}footer>p{margin:0}footer>a:last-child{border-bottom:1px solid var(--ink);font-weight:700}@media(max-width:720px){.site-header{height:68px}.site-header nav{display:none}.button-small{font-size:.65rem;padding:.6rem}.hero{grid-template-columns:1fr;padding-top:2.5rem;gap:2.8rem}.hero h1,h2{font-size:3.4rem}.hero-visual{height:105vw;min-height:360px}.hero-note{margin-top:2.5rem}.intro-band{min-height:105px}.intro-band span{display:none}.section{padding:4.5rem 5vw}.section-heading{display:block}.section-heading>p{margin-top:1.4rem}.service-grid{grid-template-columns:1fr;gap:1.2rem}.card-image{height:190px}.about{grid-template-columns:1fr;padding-top:0;gap:3rem}.about-image,.portrait-shape{min-height:390px}.about-copy{padding-bottom:4.5rem}.steps{grid-template-columns:1fr}.steps article,.steps article:first-child{padding:1.5rem 0;border-right:none;border-bottom:1px solid var(--line)}.steps article:last-child{border-bottom:none}.faq{grid-template-columns:1fr;gap:2.5rem}.book{grid-template-columns:1fr;padding:4.5rem 5vw;gap:2.5rem}footer{flex-wrap:wrap;justify-content:flex-start}.concept-bar{font-size:.58rem}.brand{font-size:.85rem}}
.hero-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.card-image>span{position:relative;z-index:1;text-shadow:0 1px 10px rgba(0,0,0,.45)}
.portrait-shape img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* Mobile polish: preserve a calm, intentional hero without horizontal clipping. */
body{overflow-x:hidden}
@media(max-width:720px){
  .site-header{padding:0 1.25rem}
  .hero h1,.hero h2{font-size:clamp(2.85rem,12.5vw,3.2rem)}
  .concept-bar{overflow:hidden;white-space:nowrap}
}

/* Persistent agency path on the portfolio concept. */
.studio-demo-bar{position:sticky;top:0;z-index:1000;min-height:48px;background:var(--ink);color:#f3e9da;padding:.55rem max(1rem,5vw);display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.72rem}
.studio-demo-label{display:flex;align-items:center;gap:.8rem}
.studio-demo-label strong{color:#e7b18c;letter-spacing:.14em;font-size:.65rem}
.studio-demo-label span{color:#ddd4c7}
.studio-demo-actions{display:flex;align-items:center;gap:1rem}
.studio-demo-actions a{color:#fff;text-decoration:none;font-weight:700;white-space:nowrap}
.studio-demo-actions>a:first-child{border-bottom:1px solid rgba(255,255,255,.55)}
.studio-demo-cta{background:#f3e9da;color:var(--ink)!important;padding:.5rem .75rem;transition:.2s}
.studio-demo-cta:hover{background:#fff;transform:translateY(-1px)}
@media(max-width:720px){
  .studio-demo-bar{position:relative;align-items:stretch;padding:.65rem .8rem;gap:.55rem}
  .studio-demo-label{display:block;line-height:1.25}
  .studio-demo-label strong,.studio-demo-label span{display:block}
  .studio-demo-label span{font-size:.62rem;margin-top:.12rem}
  .studio-demo-actions{gap:.65rem;justify-content:space-between}
  .studio-demo-actions a{font-size:.66rem}
  .studio-demo-cta{padding:.45rem .55rem}
}
