@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=DM+Sans:wght@400;500&display=swap');
:root{--ink:#34362d;--olive:#596149;--paper:#f8f6f0;--sand:#e9e4d8;--mist:#ecece3;--line:#d1d0c4;--brass:#8c7042}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.72 'DM Sans',Arial,sans-serif}img{display:block;width:100%;height:auto}a{color:inherit}a:focus-visible{outline:2px solid var(--olive);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.06}.preview{padding:8px 20px;text-align:center;color:#fff;background:#4f5844;font-size:.72rem;letter-spacing:.09em}.header{max-width:1380px;margin:auto;padding:23px 5.2% 18px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;display:flex;align-items:center;gap:14px}.brand-mark{width:48px;height:48px;border:1px solid var(--olive);border-radius:50%;display:grid;place-items:center;font:500 1.25rem 'Cormorant Garamond',serif}.brand-name{font:500 1.45rem 'Cormorant Garamond',serif;letter-spacing:.08em}.brand-name small{display:block;font:500 .62rem 'DM Sans',sans-serif;letter-spacing:.18em;color:#747767;margin-top:3px}.nav{display:flex;gap:20px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.nav a{text-decoration:none;font-size:.76rem}.nav a:hover,.nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}.nav .contact-link{padding:9px 15px;border:1px solid var(--olive)}.page-hero{min-height:470px;background:var(--sand);display:grid;grid-template-columns:minmax(300px,46%) 1fr}.page-hero .copy{padding:76px 11%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;color:#626b54}.page-hero h1{font-size:clamp(3.5rem,6vw,6.2rem);letter-spacing:-.04em;margin:20px 0 24px}.page-hero p{max-width:510px;color:#5d6055}.page-hero img{height:100%;min-height:470px;object-fit:cover}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;margin-top:30px;padding:13px 22px;background:var(--olive);color:#fff;text-decoration:none;border:1px solid var(--olive);font-size:.78rem;letter-spacing:.04em}.button.alt{background:transparent;color:var(--olive)}.button:hover{background:#434a38;color:#fff}.section{max-width:1280px;margin:auto;padding:84px 5.2%}.section.tint{max-width:none;background:var(--mist)}.section.tint>.inner{max-width:1147px;margin:auto}.section-title{display:grid;grid-template-columns:1fr minmax(260px,360px);gap:35px;align-items:end;padding-top:24px;border-top:1px solid var(--line);margin-bottom:38px}.section-title h2{font-size:clamp(2.6rem,4.5vw,4.4rem);margin-top:12px}.section-title p{color:#66695e;font-size:.92rem}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{background:#fff;border:1px solid var(--line)}.card img{aspect-ratio:4/3;object-fit:cover}.card .body{padding:24px}.card h3{font-size:2rem;margin-bottom:10px}.card p{color:#65695d;font-size:.92rem}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.service{border-top:1px solid #b9bbaa;padding-top:20px}.service .number{font-size:.72rem;color:#747c68}.service h3{font-size:2rem;margin:15px 0}.service p{font-size:.92rem;color:#606558}.quote{max-width:870px;margin:auto;padding:86px 8%;text-align:center}.quote h2{font-size:clamp(2.7rem,4.5vw,4.7rem);margin:16px 0 22px}.quote p{color:#66695e}.project{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;margin-top:48px}.project:nth-child(even){grid-template-columns:.95fr 1.05fr}.project:nth-child(even) .project-photo{order:2}.project-photo{background:#e0ddd2}.project-photo img{aspect-ratio:4/3;object-fit:contain}.project-copy h2{font-size:3.2rem;margin:14px 0}.project-copy p{color:#62675a}.facts{display:flex;gap:9px 18px;flex-wrap:wrap;margin-top:22px;text-transform:uppercase;letter-spacing:.09em;font-size:.68rem;color:#6c735f}.note{padding:34px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:160px 1fr;gap:35px}.note h2{font-size:2.35rem}.note p{color:#616659;max-width:700px}.contact-panel{padding:82px 7%;background:var(--olive);color:white;text-align:center}.contact-panel h2{font-size:clamp(2.8rem,5vw,4.8rem);margin:18px 0 22px}.contact-panel p{max-width:580px;margin:auto;color:#e7e9e1}.contact-panel .button{background:#fff;border-color:#fff;color:var(--olive)}.contact-panel .links{margin-top:27px;display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:.85rem}.footer{padding:30px 5.2%;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#737768;font-size:.72rem}.footer strong{font:500 1.25rem 'Cormorant Garamond',serif;color:#4e5741}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product{padding:30px;border:1px solid var(--line);background:#fff}.product h3{font-size:2.1rem}.product .price{margin:10px 0;color:var(--brass)}.product ul{padding-left:19px;color:#62675a}.product .button{width:100%}.shop-hero{background:#e8ddc9}.shop-hero img{object-position:center}.center{text-align:center}.muted{color:#66695e}.small{font-size:.82rem}.footer-nav{display:flex;gap:15px;flex-wrap:wrap}.footer-nav a{text-underline-offset:4px}
@media(max-width:1050px){.header{align-items:flex-start}.nav{gap:12px}.nav a{font-size:.71rem}.service-list,.product-grid{grid-template-columns:1fr 1fr}.page-hero{grid-template-columns:1fr 1fr}.project{gap:28px}}
@media(max-width:760px){.header{flex-direction:column;align-items:center}.brand-name{text-align:center}.nav{justify-content:center}.page-hero{grid-template-columns:1fr}.page-hero .copy{padding:54px 8%}.page-hero img{min-height:0;aspect-ratio:4/3}.section{padding:58px 7%}.section-title{grid-template-columns:1fr}.grid-2,.grid-3,.service-list,.product-grid,.project,.project:nth-child(even){grid-template-columns:1fr}.project:nth-child(even) .project-photo{order:0}.note{grid-template-columns:1fr;gap:14px}.footer{flex-direction:column;text-align:center;align-items:center}.footer-nav{justify-content:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.before-after-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px;background:#e0ddd2}
.before-after-pair figure{position:relative;overflow:hidden;background:#d3d1c7}
.before-after-pair img{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover;object-position:center}
.before-after-pair figure:first-child img{object-fit:cover;object-position:center}
.before-after-pair figcaption{position:absolute;top:12px;left:12px;background:rgba(248,246,240,.94);padding:5px 10px;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:760px){.before-after-pair{grid-template-columns:1fr 1fr;gap:6px;padding:6px}.before-after-pair figcaption{top:7px;left:7px}}
.ritual-intro{max-width:860px;margin:auto;padding:90px 7%;text-align:center}.ritual-intro h2{font-size:clamp(3.2rem,6vw,5.7rem);margin:18px 0 24px}.ritual-intro p{max-width:650px;margin:auto;color:#62675a}.ritual-notes{display:flex;justify-content:center;gap:10px 24px;flex-wrap:wrap;margin-top:28px;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;color:#736b55}.product-grid-four{grid-template-columns:repeat(2,1fr)}.visual-product{padding:0;overflow:hidden;display:flex;flex-direction:column}.visual-product>img{aspect-ratio:4/4.25;object-fit:cover;background:#eee7db}.visual-product:nth-child(2)>img,.visual-product:nth-child(4)>img{object-position:center}.product-body{display:flex;flex:1;flex-direction:column;padding:28px}.product-body .button{margin-top:auto}.product-copy{color:#62675a;margin-bottom:22px}
@media(max-width:760px){.ritual-intro{padding:64px 8%}.product-grid-four{grid-template-columns:1fr}}
.shop-hero img{object-fit:contain;object-position:center;background:#e8ddc9;padding:24px}
.visual-product>img{object-fit:contain;background:#eee7db;padding:12px}
@media(max-width:760px){.shop-hero img{padding:12px}}

.portfolio-hero img{object-position:center}
.portfolio-showcase{max-width:1380px}
.portfolio-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:300px;grid-auto-flow:dense;gap:18px}
.portfolio-tile{position:relative;overflow:hidden;min-height:0;background:#dedfd2}
.portfolio-tile.tile-wide{grid-column:span 2}
.portfolio-tile.tile-tall{grid-row:span 2}
.portfolio-tile img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.portfolio-tile::after{content:"";position:absolute;inset:auto 0 0;height:46%;background:linear-gradient(transparent,rgba(24,27,21,.72));pointer-events:none}
.portfolio-tile figcaption{position:absolute;z-index:1;left:22px;right:22px;bottom:19px;color:#fff}
.portfolio-tile figcaption strong{display:block;font:400 1.85rem/1.05 'Cormorant Garamond',Georgia,serif}
.portfolio-tile figcaption span{display:block;margin-top:7px;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#ebece5}
.portfolio-tile:hover img{transform:scale(1.025)}
.portfolio-tile.tile-detail img{object-position:center 30%}
.portfolio-projects{max-width:none}
.portfolio-projects>.inner{max-width:1147px;margin:auto}
.portfolio-projects .card img{object-position:center}
.portfolio-link-row{text-align:center;margin-top:36px}

@media(max-width:900px){
  .portfolio-mosaic{grid-auto-rows:245px}
}
@media(max-width:760px){
  .portfolio-hero img{object-position:center}
  .portfolio-mosaic{grid-template-columns:1fr;grid-auto-rows:auto;gap:14px}
  .portfolio-tile,.portfolio-tile.tile-wide,.portfolio-tile.tile-tall{grid-column:auto;grid-row:auto}
  .portfolio-tile img{height:auto;aspect-ratio:4/5}
  .portfolio-tile.tile-wide img{aspect-ratio:4/3}
  .portfolio-tile.tile-detail img{aspect-ratio:16/9;object-position:center 30%}
  .portfolio-tile figcaption{left:18px;right:18px;bottom:16px}
  .portfolio-tile figcaption strong{font-size:1.7rem}
}
