:root{--cream:#f6f2ea;--paper:#fffcf6;--chocolate:#30221b;--rust:#947253;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--stroke:rgba(48,34,27,.14)}
.announcement{background:var(--cream);color:var(--chocolate);border-bottom:1px solid var(--stroke);min-height:32px;font-size:8px;letter-spacing:.21em}
.site-header{background:rgba(246,242,234,.97);backdrop-filter:blur(18px)}
.nav-wrap{height:108px;gap:24px}.wordmark{width:auto;flex-direction:row;align-items:center;gap:14px}.brand-seal{width:73px;height:73px;object-fit:contain;flex:none}.wordmark>.brand-type{font-family:var(--serif);font-size:31px;letter-spacing:.09em;line-height:1;text-transform:uppercase;font-weight:600}.wordmark .brand-type small{display:block;font-family:var(--sans);font-size:8px;letter-spacing:.3em;margin:9px 0 0 3px;font-weight:500}.nav-links{gap:28px}.nav-links a{font-size:11px}.button{font-size:11px;letter-spacing:.06em;font-weight:500;min-height:50px;padding-inline:25px}.button-dark{background:var(--chocolate)}.nav-order{min-height:43px}.hero{grid-template-columns:45% 55%;min-height:700px;border:0;padding:28px 28px 28px 0}.hero-copy{padding-top:50px;padding-bottom:50px;padding-right:30px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:28px}.hero h1{font-size:clamp(78px,8vw,138px);letter-spacing:-.055em;line-height:.88;white-space:normal}.hero h1 em{color:var(--rust);font-weight:400}.hero-tagline{font-family:var(--sans);font-style:normal;font-size:12px;letter-spacing:.12em;line-height:1.85;text-transform:uppercase;margin-top:34px}.hero-description{font-size:13px;line-height:1.9;margin:20px 0 27px;max-width:330px}.hero-annotation{margin-top:38px;font-size:8px}.hero-visual{min-height:640px;background:var(--ivory)}.hero-photo{transform:scale(1.02);filter:saturate(.88);object-position:50% 50%}.hero-visual:hover .hero-photo{transform:scale(1.06)}.hero-stamp{width:132px;height:132px;background:rgba(246,242,234,.95);padding:8px;border:0;top:23px;right:23px;box-shadow:0 8px 32px #30221b12}.hero-stamp img{width:100%;height:100%;object-fit:contain}.hero-photo-label{font-size:8px;letter-spacing:.19em}.statement-bar{background:transparent;border-block:1px solid var(--stroke);color:var(--chocolate);padding-block:24px;font-size:9px;letter-spacing:.17em}.statement-bar .line-icon{width:13px;height:13px;color:var(--rust)}.section-pad{padding-block:105px}.section-intro h2,.seasonal h2,.gallery h2,.order-section h2,.faq h2{letter-spacing:-.04em;line-height:.98;font-size:clamp(52px,6vw,88px)}.section-intro{margin-bottom:48px}.section-intro>p{font-size:12px;line-height:1.9;max-width:295px}.collection-grid{gap:28px}.feature-card{border:0;background:transparent}.card-photo{aspect-ratio:4/5}.card-content{padding:24px 0 0}.card-content h3{font-size:35px;letter-spacing:-.025em;line-height:1.05}.card-content p{font-size:12px}.card-index{font-size:8px;letter-spacing:.13em}.circle-arrow{border-color:var(--stroke);width:39px;height:39px}.boutique-interactive{background:transparent;padding:34px 0;border:0;border-block:1px solid var(--stroke);margin-top:58px}.selection-pill{border-color:var(--stroke);border-radius:0;background:transparent}.selection-head h3{font-size:37px}.eyebrow{font-size:9px;letter-spacing:.18em;font-weight:500}.essence{background:#30221b}.essence-text{padding-top:70px;padding-bottom:70px;position:relative}.essence h2{font-size:clamp(64px,6.6vw,103px);letter-spacing:-.035em;line-height:.95}.essence-text>p{font-size:13px;max-width:350px;line-height:1.9}.essence-seal{width:100px;height:100px;object-fit:contain;background:var(--cream);padding:7px;border-radius:50%;margin:18px 0 25px}.essence-values{font-size:8px;letter-spacing:.1em}.seasonal-picture{box-shadow:none}.gallery-strip{gap:16px}.gallery-heading{padding-bottom:38px}.gallery-strip img{filter:saturate(.88)}.order-section{background:#e9dfd0;color:var(--chocolate)}.order-section h2 em{color:#816046}.order-section .eyebrow,.order-top>p,.step p,.order-cta>span{color:#695849}.step{border-color:#30221b30}.order-section .button-cream{background:var(--chocolate);color:var(--cream)}.step h3{font-size:32px}.step>span{font-family:var(--serif);font-size:25px;color:var(--rust)}.footer{background:#30221b}.wordmark-footer .brand-seal{width:90px;height:90px;background:var(--cream);padding:6px;border-radius:50%}.wordmark-footer>.brand-type{font-size:36px}.footer-brand>p{font-size:11px;line-height:1.9}.endmark{font-size:clamp(42px,6vw,90px);padding-block:60px}.floating-wa{border-radius:0;background:var(--cream);border:1px solid var(--stroke);color:var(--chocolate);box-shadow:0 6px 24px #30221b10}.faq summary{font-size:13px}.faq-list p{font-size:12px;line-height:1.8}
@media(min-width:1550px){.hero{min-height:790px}}
@media(max-width:1120px){.nav-links{gap:16px}.brand-seal{width:62px;height:62px}.wordmark>.brand-type{font-size:26px}.hero h1{font-size:clamp(76px,9vw,110px)}.hero-copy{padding-left:32px}.hero-visual{min-height:600px}}
@media(max-width:840px){.hero{grid-template-columns:1fr;padding:0 24px 24px;min-height:0}.hero-copy{padding:65px 8px 50px}.hero h1{font-size:clamp(90px,15vw,128px)}.hero-visual{min-height:520px;max-height:650px}.hero-annotation{margin-top:25px}.nav-wrap{height:94px}.hero-tagline{margin-top:25px}.hero-description{max-width:390px}.section-pad{padding-block:78px}.collection-grid{gap:16px}.card-content h3{font-size:30px}.essence-text{padding-block:55px}}
@media(max-width:600px){.nav-wrap{height:86px;gap:12px}.brand-seal{width:57px;height:57px}.wordmark{width:auto;gap:9px}.wordmark>.brand-type{font-size:24px;letter-spacing:.06em}.wordmark .brand-type small{font-size:6px;letter-spacing:.25em;margin-top:7px}.hero{padding:0 14px 14px}.hero-copy{padding:48px 6px 40px}.hero-copy .eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:24px}.hero h1{font-size:clamp(81px,21vw,113px)}.hero-tagline{font-size:10px;margin-top:25px}.hero-description{font-size:12px;margin:17px 0 23px}.hero-visual{min-height:420px;max-height:520px}.hero-stamp{width:97px;height:97px;right:15px;top:15px;padding:6px}.hero-annotation{font-size:8px;margin-top:26px}.hero-photo-label{font-size:7px;left:18px}.statement-bar{gap:12px;padding:18px 12px;font-size:7px;letter-spacing:.08em}.statement-bar .line-icon{width:10px;height:10px}.section-pad{padding-block:66px}.section-intro h2,.seasonal h2,.gallery h2,.order-section h2,.faq h2{font-size:clamp(51px,13vw,70px)}.collection-grid{gap:34px}.card-photo{aspect-ratio:1/1.06}.card-content h3{font-size:35px}.boutique-interactive{padding:25px 0}.selection-head h3{font-size:34px}.essence h2{font-size:68px}.essence-seal{width:88px;height:88px}.wordmark-footer>.brand-type{font-size:31px}.wordmark-footer .brand-seal{width:76px;height:76px}.floating-wa{bottom:16px;right:16px}.footer-inner{gap:35px}.endmark{font-size:40px;padding-block:42px}}
@media(prefers-reduced-motion:reduce){.hero-photo{transition:none}}

/* Brand lettering adapted from the DOFFLE seal. */
.wordmark>.brand-type{display:flex;flex-direction:column;align-items:center;gap:0;line-height:1}.brand-lettering{display:block;width:151px;height:32px;overflow:hidden}.brand-lettering img{display:block;width:151px;max-width:none;height:auto;object-fit:contain;margin-top:-10px}.wordmark .brand-type small{margin:8px 0 0;letter-spacing:.36em;font-size:7px}.wordmark-footer .brand-lettering{width:180px;height:38px}.wordmark-footer .brand-lettering img{width:180px;margin-top:-12px;filter:brightness(0) invert(.93)}.wordmark-footer .brand-type small{font-size:8px;letter-spacing:.38em}
@media(max-width:1120px){.brand-lettering{width:132px;height:28px}.brand-lettering img{width:132px;margin-top:-9px}}
@media(max-width:600px){.brand-lettering{width:113px;height:25px}.brand-lettering img{width:113px;margin-top:-7px}.wordmark .brand-type small{font-size:6px;letter-spacing:.28em;margin-top:6px}.wordmark-footer .brand-lettering{width:148px;height:33px}.wordmark-footer .brand-lettering img{width:148px;margin-top:-9px}}

/* DOFFLE's open pastry seal replaces generic outbound arrows. */
.signature-inline{display:inline-block;vertical-align:middle;margin-left:7px;width:18px;height:18px}
use[href="#i-signature"]{stroke-width:1.15}
.circle-arrow{border:0;border-radius:0;width:38px;height:38px}
.circle-arrow .line-icon{width:29px;height:29px}
.feature-card:hover .circle-arrow{background:transparent;color:var(--rust);transform:none}
.button .line-icon,.text-link .line-icon{transition:opacity .25s ease}
.button:hover .line-icon,.text-link:hover .line-icon{opacity:.65}
.hero-photo{filter:none;transform:none;object-position:50% 50%}
.hero-visual:hover .hero-photo{transform:none}
.hero-stamp{top:auto;bottom:58px;right:22px;width:96px;height:96px}
.card-photo{aspect-ratio:1/1.06}
.card-photo img{object-fit:contain;object-position:center;background:#eee2d2}
.seasonal-picture{transform:none;background:transparent}
.seasonal-picture img{width:100%;height:auto;object-fit:contain}
.gallery-strip{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start}
.gallery-strip img{height:auto;aspect-ratio:3/4;object-fit:contain;filter:none;background:#eee2d2}
@media(max-width:840px){.gallery-strip{grid-template-columns:repeat(5,210px)}.hero-photo-wrap{height:auto}.hero-photo{height:auto;width:100%}.hero-visual{min-height:0;max-height:none}.hero-visual .hero-photo{object-position:center}}
@media(max-width:600px){.gallery-strip{grid-template-columns:repeat(5,230px)}.hero-stamp{width:78px;height:78px;bottom:49px;right:14px}.card-photo{aspect-ratio:auto}.card-photo img{height:auto;width:100%}}
@media(prefers-reduced-motion:reduce){.button .line-icon,.text-link .line-icon{transition:none}}

/* Coordinated studio campaign, with complete portrait framing. */
.hero-visual{aspect-ratio:4/5;min-height:0;max-height:none}
.hero-photo-wrap{position:absolute;inset:0;height:100%}
.hero-visual .hero-photo{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-stamp{top:22px;bottom:auto;right:22px}
.card-photo{aspect-ratio:4/5}
.card-photo img{width:100%;height:100%;object-fit:cover}
.gallery-strip img{aspect-ratio:4/5;object-fit:cover}
@media(max-width:600px){.hero-stamp{top:15px;right:15px}.card-photo{aspect-ratio:4/5}.card-photo img{height:100%}}

/* More presence for the mobile WhatsApp action. */
@media(max-width:600px){
 .floating-wa{min-width:64px;min-height:64px;padding:16px;justify-content:center;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));border-color:rgba(48,34,27,.24);box-shadow:0 8px 26px rgba(48,34,27,.18)}
 .floating-wa>svg{width:30px;height:30px;flex:none}
}

/* Explicit text roles prevent legacy light text on the cream sections. */
:root{--rust:#795a40;--text-muted:#695849}
.order-section{background:#e9dfd0;color:#30221b}
.order-section h2,.order-section .step h3{color:#30221b}
.order-section h2 em{color:#795a40}
.order-section .order-top>p:not(.eyebrow),.order-section .order-top>.eyebrow,.order-section .step p,.order-section .order-cta>span{color:#695849}
.order-section .step>span{color:#795a40}
.order-section .button-cream{background:#30221b;color:#f6f2ea}
.order-section .button-cream:hover,.order-section .button-cream:focus-visible{background:#50392b;color:#f6f2ea}
.hero-annotation,.card-index,.selection-head>p,.selection-bottom>span,.collection-note,.section-intro>p,.seasonal-copy>p:not(.eyebrow){color:var(--text-muted)}
.endmark em{color:#795a40}
.hero-photo-label{color:#30221b;background:#f6f2ea;padding:11px 14px;max-width:calc(100% - 36px);line-height:1.65}
.hero-photo-label span{opacity:1;color:#695849}
.seasonal-caption{color:#30221b;background:#f6f2ea;padding:10px 12px}
.announcement .line-icon,.statement-bar span:nth-child(even) .line-icon{color:#795a40}
.essence a:focus-visible,.footer a:focus-visible{outline-color:#f6f2ea}
