:root{--ink:#1f3140;--ink-soft:#50606b;--cream:#f7f2ea;--paper:#fffdf9;--peach:#eab8a4;--terracotta:#c76e57;--blue:#b9d0d2;--sage:#ccd5c1;--line:rgba(31,49,64,.14);--ease:cubic-bezier(.23,1,.32,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}.section-pad{padding:112px 0}.skip-link{position:absolute;left:16px;top:-60px;background:var(--ink);color:#fff;padding:10px 16px;z-index:10}.skip-link:focus{top:10px}.site-header{height:88px;position:absolute;inset:0 0 auto;z-index:5}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand strong{display:block;font:600 18px/1 'Playfair Display',serif;letter-spacing:-.02em}.brand small{display:block;color:var(--ink-soft);font-size:9px;letter-spacing:.12em;text-transform:uppercase;margin-top:6px}.brand-mark{width:32px;height:32px;display:inline-block;position:relative}.brand-mark span{position:absolute;border:1px solid var(--terracotta);border-radius:100% 0 100% 0;transform:rotate(-25deg)}.brand-mark span:first-child{width:18px;height:29px;left:2px;top:0;background:var(--peach)}.brand-mark span:last-child{width:18px;height:29px;right:2px;bottom:0;background:transparent;border-color:var(--ink)}.site-nav{display:flex;align-items:center;gap:30px;font-size:12px;color:var(--ink-soft)}.site-nav>a:not(.nav-cta){transition:color .2s ease}.site-nav>a:not(.nav-cta):hover{color:var(--terracotta)}.nav-cta{background:var(--ink);color:#fff;padding:12px 18px;border-radius:99px;font-weight:600;transition:transform .2s ease,background .2s ease}.nav-cta:hover{background:var(--terracotta);transform:translateY(-2px)}.nav-cta span,.button span,.card-link span{margin-left:10px}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{width:23px;height:2px;background:var(--ink);display:block;margin:4px}.hero{min-height:750px;padding-top:175px;position:relative;overflow:hidden}.hero:before{content:'';position:absolute;width:800px;height:800px;right:-280px;top:-320px;border-radius:50%;background:rgba(234,184,164,.24)}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:60px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--terracotta);font-weight:700;display:flex;align-items:center;gap:9px;margin:0 0 24px}.eyebrow.light{color:#f5c7b4}.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--terracotta);display:inline-block}.hero h1{font:500 clamp(46px,5.3vw,76px)/1.05 'Playfair Display',serif;letter-spacing:-.045em;max-width:680px;margin:0 0 28px}.hero h1 em,.section-heading h2 em,.intro h2 em,.contact h2 em{font-style:italic;color:var(--terracotta)}.hero-lede{font-size:17px;max-width:515px;color:var(--ink-soft);margin:0 0 34px}.hero-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;border:0;cursor:pointer;border-radius:99px;padding:16px 23px;font-size:13px;font-weight:700;transition:transform .2s var(--ease),background .2s ease}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--terracotta);color:#fff}.button-primary:hover{background:#b85c47}.button-light{background:#fff;color:var(--ink);margin-top:6px}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:3px}.text-link span{font-size:17px;margin-left:8px}.hero-note{display:flex;gap:11px;align-items:center;margin-top:55px;color:var(--ink-soft);font-size:11px;line-height:1.5}.lock-icon{width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--terracotta);border-radius:50%;color:var(--terracotta);font-size:20px}.hero-art{height:490px;position:relative}.art-sun{position:absolute;width:325px;height:325px;right:88px;top:20px;border-radius:50%;background:var(--peach);opacity:.88}.art-ring{position:absolute;border:1px solid var(--terracotta);border-radius:50%;transform:rotate(32deg)}.ring-a{width:460px;height:205px;right:20px;top:82px}.ring-b{width:420px;height:205px;right:51px;top:100px;border-color:rgba(31,49,64,.35);transform:rotate(-35deg)}.art-leaf{position:absolute;border:1px solid var(--ink);border-radius:100% 0 100% 0}.leaf-a{width:120px;height:210px;right:330px;top:45px;background:var(--sage);transform:rotate(28deg)}.leaf-b{width:88px;height:155px;right:363px;top:176px;border-color:var(--terracotta);background:rgba(255,253,249,.35);transform:rotate(-25deg)}.art-card{position:absolute;z-index:2;right:51px;bottom:45px;width:210px;height:164px;background:rgba(255,253,249,.82);box-shadow:0 16px 50px rgba(31,49,64,.1);padding:27px 25px;transform:rotate(-6deg);display:flex;flex-direction:column;justify-content:center}.art-card span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--terracotta)}.art-card strong{font:500 30px/1.05 'Playfair Display',serif;margin:5px 0 14px}.art-card small{font-size:10px;color:var(--ink-soft)}.art-caption{position:absolute;right:5px;bottom:7px;font:italic 16px 'Playfair Display',serif;text-align:right}.trust-strip{border-top:1px solid var(--line);margin-top:50px;padding-top:21px;display:flex;gap:18px;align-items:center;color:var(--ink-soft);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.trust-strip i{width:5px;height:5px;background:var(--peach);border-radius:50%}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:220px 1fr;gap:55px}.section-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--terracotta);display:flex;gap:18px;align-items:flex-start}.section-kicker>span:first-child{font:500 24px 'Playfair Display',serif}.kicker-line{height:1px;width:30px;background:var(--terracotta);margin-top:12px}.intro h2,.section-heading h2,.contact h2{font:500 clamp(38px,4.2vw,58px)/1.06 'Playfair Display',serif;letter-spacing:-.04em;margin:0 0 24px}.intro-lead{font-size:18px;color:var(--ink-soft);max-width:720px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:62px}.value-number{font:500 13px 'Playfair Display',serif;color:var(--terracotta)}.values-grid h3{font:500 25px 'Playfair Display',serif;margin:9px 0 8px}.values-grid p{font-size:13px;color:var(--ink-soft);margin:0;max-width:220px}.services{background:var(--cream)}.centered{text-align:center}.centered .eyebrow{justify-content:center}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:58px}.service-card{min-height:350px;padding:33px;display:flex;flex-direction:column;justify-content:space-between;border-radius:3px;transition:transform .3s var(--ease),box-shadow .3s ease}.service-card:hover{transform:translateY(-7px);box-shadow:0 18px 36px rgba(31,49,64,.1)}.card-peach{background:var(--peach)}.card-blue{background:var(--blue)}.card-green{background:var(--sage)}.card-icon{font-size:31px;color:var(--terracotta);margin-bottom:28px}.card-index{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 13px}.service-card h3{font:500 33px 'Playfair Display',serif;margin:0 0 13px}.service-card>div>p:not(.card-index){font-size:13px;color:var(--ink-soft);margin:0;max-width:275px}.card-link{display:inline-block;margin-top:28px;font-size:12px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:3px}.stats{background:var(--ink);color:#fff;padding:62px 0}.stats-inner{display:grid;grid-template-columns:1fr 1fr 1.6fr;gap:30px;align-items:center}.stats-inner>div:not(.stats-quote){border-right:1px solid rgba(255,255,255,.22);display:flex;gap:16px;align-items:center}.stats strong{font:500 clamp(48px,5vw,72px)/1 'Playfair Display',serif;color:var(--peach)}.stats sup{font-size:.5em}.stats span{font-size:11px;line-height:1.35;color:rgba(255,255,255,.65)}.stats-quote{display:flex;gap:17px;align-items:flex-start;padding-left:14px}.stats-quote>span{color:var(--terracotta);font:500 55px/1 'Playfair Display',serif}.stats-quote p{font:italic 18px/1.4 'Playfair Display',serif;max-width:400px;margin:4px 0 0}.testimonials{background:var(--paper)}.quotes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}.quote-card{margin:0;padding:30px 28px;background:var(--cream);min-height:250px;display:flex;flex-direction:column;justify-content:space-between}.quote-card.featured{background:var(--peach)}.stars{color:var(--terracotta);letter-spacing:3px;font-size:11px}.quote-card blockquote{font:italic 19px/1.42 'Playfair Display',serif;margin:26px 0;color:var(--ink)}.quote-card figcaption{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:var(--ink-soft)}.faq{background:var(--cream)}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px}.faq-intro{color:var(--ink-soft);font-size:14px;max-width:310px}.faq-list details{border-top:1px solid var(--line);padding:21px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font:500 20px 'Playfair Display',serif;display:flex;justify-content:space-between;align-items:center;gap:20px}summary::-webkit-details-marker{display:none}summary span{font:400 24px 'DM Sans',sans-serif;color:var(--terracotta);transition:transform .2s ease}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--ink-soft);font-size:13px;max-width:600px;margin:15px 35px 2px 0}.contact{background:var(--terracotta);color:#fff}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:start}.contact h2{color:#fff}.contact h2 em{color:#f8d3c6}.contact-copy>p:not(.eyebrow){color:rgba(255,255,255,.8);font-size:15px;max-width:420px}.contact-details{display:flex;gap:34px;margin-top:46px}.contact-details>div{display:flex;gap:10px;align-items:flex-start;font-size:11px;color:rgba(255,255,255,.75)}.contact-details strong{color:#fff;font-size:11px}.detail-icon{display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;height:28px;width:28px;font-size:15px}.contact-form{background:#fff;color:var(--ink);padding:34px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact-form label{display:block;font-size:11px;font-weight:700;color:var(--ink-soft);margin-bottom:17px}.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);padding:10px 0 11px;background:transparent;outline:0;color:var(--ink);resize:vertical;font-size:14px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--terracotta)}.consent{display:flex!important;gap:9px;align-items:flex-start;font-size:10px!important;font-weight:400!important;color:var(--ink-soft)!important}.consent input{margin-top:2px;accent-color:var(--terracotta)}.hidden{display:none}.notice{padding:55px 0;background:var(--paper)}.notice-inner{display:flex;gap:23px;align-items:flex-start;max-width:900px;margin-inline:auto}.notice-icon{border:1px solid var(--terracotta);color:var(--terracotta);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:italic 18px 'Playfair Display',serif;flex:none}.notice h2{font:500 22px 'Playfair Display',serif;margin:0 0 10px}.notice p{font-size:11px;color:var(--ink-soft);margin:0}.site-footer{background:var(--paper);padding:30px 0 24px;border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between}.footer-nav{display:flex;gap:24px;font-size:11px;color:var(--ink-soft)}.footer-nav a:hover{color:var(--terracotta)}.footer-arrow{height:37px;width:37px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;transition:background .2s ease}.footer-arrow:hover{background:var(--peach)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:27px;padding-top:16px;color:var(--ink-soft);font-size:10px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}@media(max-width:850px){.container{width:min(100% - 40px,650px)}.site-header,.nav-wrap{height:76px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:68px;left:20px;right:20px;background:var(--paper);padding:20px;box-shadow:0 18px 35px rgba(31,49,64,.15);flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav a{padding:12px 4px}.nav-cta{text-align:center;margin-top:7px}.hero{min-height:auto;padding-top:135px;padding-bottom:70px}.hero-grid{display:block}.hero-art{height:390px;margin:55px -5px 0}.art-sun{width:270px;height:270px;right:50px}.ring-a{width:370px;height:170px;right:3px}.ring-b{width:340px;height:170px;right:18px}.leaf-a{right:250px}.leaf-b{right:275px}.art-card{right:26px;bottom:25px}.art-caption{right:0}.trust-strip{margin-top:25px;gap:10px;justify-content:space-between;font-size:8px}.intro-grid,.faq-grid,.contact-grid{display:block}.section-pad{padding:78px 0}.section-kicker{margin-bottom:36px}.values-grid{gap:20px;margin-top:45px}.service-grid,.quotes-grid{grid-template-columns:1fr;gap:14px}.service-card{min-height:280px}.stats-inner{grid-template-columns:1fr 1fr;gap:20px}.stats-inner>div:not(.stats-quote){border-right:0}.stats-quote{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.22);padding:25px 0 0}.faq-list{margin-top:45px}.contact-form{margin-top:45px}.contact-details{margin-top:30px}.footer-top{align-items:flex-start;gap:22px;flex-wrap:wrap}.footer-nav{order:3;width:100%;flex-wrap:wrap;gap:15px}.footer-bottom{flex-direction:column;gap:6px}}@media(max-width:500px){.values-grid{grid-template-columns:1fr}.hero h1{font-size:47px}.hero-lede{font-size:15px}.hero-actions{gap:20px}.hero-art{transform:scale(.92);transform-origin:center left;margin-right:-38px}.trust-strip span:nth-of-type(2),.trust-strip i:nth-of-type(2){display:none}.stats-inner{grid-template-columns:1fr}.stats-inner>div:not(.stats-quote){display:flex}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:25px 21px}.notice-inner{gap:14px}.footer-brand{width:100%}summary{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button,.service-card{transition:none}}
.portrait-art{height:490px}.portrait-halo{position:absolute;width:390px;height:390px;right:58px;top:30px;border-radius:50%;background:var(--peach);opacity:.62}.portrait-frame{position:absolute;z-index:1;right:76px;top:0;width:330px;height:430px;overflow:hidden;border-radius:170px 170px 8px 8px;box-shadow:0 22px 50px rgba(31,49,64,.14);background:#eee}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center top}.portrait-card{position:absolute;z-index:2;right:7px;bottom:30px;width:190px;height:138px;background:rgba(255,253,249,.91);box-shadow:0 16px 50px rgba(31,49,64,.1);padding:22px 21px;transform:rotate(-6deg);display:flex;flex-direction:column;justify-content:center}.portrait-card span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--terracotta)}.portrait-card strong{font:500 28px/1.05 'Playfair Display',serif;margin:5px 0 12px}.portrait-card small{font-size:9px;color:var(--ink-soft)}.press{background:var(--paper)}.press-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.press-intro{font-size:14px;color:var(--ink-soft);max-width:340px}.press-logos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:center}.press-logo{height:150px;background:var(--cream);display:grid;place-items:center;padding:24px;transition:transform .25s var(--ease),box-shadow .25s ease}.press-logo:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(31,49,64,.1)}.press-logo img{max-width:100%;max-height:92px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.8;transition:filter .2s ease,opacity .2s ease}.press-logo:hover img{filter:grayscale(0);opacity:1}.press-logo-square img{max-height:100px;max-width:100px}
@media(max-width:850px){.press-inner{display:block}.press-logos{margin-top:42px}.portrait-art{margin-top:55px}.portrait-halo{right:40px}.portrait-frame{right:58px}.portrait-card{right:8px}}
@media(max-width:500px){.press-logos{gap:9px}.press-logo{height:105px;padding:12px}.press-logo img{max-height:58px}.press-logo-square img{max-height:66px}.portrait-art{transform:none;margin-right:-5px}.portrait-halo{width:300px;height:300px;right:18px;top:44px}.portrait-frame{right:33px;width:250px;height:350px}.portrait-card{right:0;bottom:25px;width:165px;height:120px;padding:17px}.portrait-card strong{font-size:24px}}
.legal-page{background:var(--cream)}.legal-header{position:relative;background:var(--paper)}.legal-main{padding:85px 0 110px}.legal-content{max-width:900px}.legal-content h1{font:500 clamp(44px,6vw,72px)/1.04 'Playfair Display',serif;letter-spacing:-.045em;margin:0 0 25px}.legal-content h1 em{color:var(--terracotta);font-style:italic}.legal-lede{font-size:18px;color:var(--ink-soft);max-width:700px;padding-bottom:35px;border-bottom:1px solid var(--line)}.legal-content section{padding:28px 0;border-bottom:1px solid var(--line)}.legal-content h2{font:500 25px 'Playfair Display',serif;margin:0 0 12px}.legal-content p{font-size:14px;color:var(--ink-soft);max-width:780px}.legal-content a:not(.button){color:var(--terracotta);text-decoration:underline;text-underline-offset:3px}.legal-content code{background:rgba(234,184,164,.28);padding:2px 5px}.legal-update{margin:28px 0}.legal-footer-bottom{justify-content:space-between}.legal-footer-bottom a{color:var(--terracotta)}.cookie-banner{position:fixed;z-index:20;left:24px;right:24px;bottom:24px;background:var(--ink);color:#fff;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:25px;box-shadow:0 16px 42px rgba(31,49,64,.24);transition:opacity .25s ease,transform .25s ease}.cookie-banner[hidden]{display:none}.cookie-banner.cookie-hidden{opacity:0;transform:translateY(20px)}.cookie-banner strong{font:500 19px 'Playfair Display',serif}.cookie-banner p{margin:5px 0 0;color:rgba(255,255,255,.72);font-size:11px}.cookie-banner a{color:#f5c7b4;text-decoration:underline;text-underline-offset:2px}.cookie-actions{display:flex;align-items:center;gap:15px;flex:none}.cookie-refuse{border:0;background:transparent;color:#fff;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:12px}.cookie-accept{padding:12px 18px;font-size:12px;margin:0}
@media(max-width:650px){.legal-main{padding:60px 0 75px}.legal-lede{font-size:16px}.cookie-banner{left:12px;right:12px;bottom:12px;padding:17px;display:block}.cookie-actions{margin-top:15px;justify-content:flex-end}.legal-footer-bottom{gap:10px}}
