:root{--paper:#f4eee5;--paper2:#e8ded1;--ink:#17241f;--green:#173d32;--green-dark:#102b23;--red:#9e3546;--gold:#c9a86c;--muted:#756e65;--line:rgba(23,36,31,.18);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.scroll-progress{height:3px;position:fixed;z-index:30;top:0;left:0;right:0;background:transparent}.scroll-progress span{display:block;height:100%;width:0;background:var(--gold);transform-origin:left}.topline{height:29px;display:flex;align-items:center;justify-content:center;gap:15px;background:var(--green-dark);color:#f8f2e8;font-size:8px;letter-spacing:.2em}.topline i{font-style:normal;color:var(--gold)}.header{height:84px;padding:0 7.2%;display:flex;align-items:center;justify-content:space-between;background:rgba(244,238,229,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid transparent;transition:height .35s,box-shadow .35s,border-color .35s,background .35s}.header.scrolled{height:70px;box-shadow:0 8px 30px #1a241b0d;border-color:var(--line);background:rgba(244,238,229,.94);backdrop-filter:blur(12px)}.logo{font:500 29px/.8 var(--serif);letter-spacing:.035em;display:flex;flex-direction:column;gap:6px;color:var(--green)}.logo span{font:500 8px var(--sans);letter-spacing:.55em;padding-left:3px}.nav{display:flex;align-items:center;gap:35px}.nav>a{font-size:10px;color:#4c514a;transition:color .2s}.nav>a:hover{color:var(--red)}.nav .nav-contact{padding:13px 19px;background:var(--green);color:#fff;border-radius:2px;letter-spacing:.02em}.nav-contact b{margin-left:13px;color:var(--gold);font-size:14px}.menu-toggle{display:none}.hero{min-height:660px;display:grid;grid-template-columns:.92fr 1.08fr;align-items:stretch;padding:0 7.2%;position:relative;background:var(--paper);overflow:hidden}.hero-copy{padding:100px 7% 95px 0;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:8px;letter-spacing:.22em;font-weight:600;color:var(--red);display:flex;align-items:center;gap:11px;margin:0 0 24px}.eyebrow>span{width:28px;height:1px;background:var(--gold);display:inline-block}.hero h1{font:400 clamp(56px,6vw,88px)/.99 var(--serif);letter-spacing:-.045em;margin:0 0 25px;color:var(--green)}h1 em,h2 em{font-weight:400;color:var(--red)}.hero-lead{font-size:13px;line-height:1.85;color:#6d685f;max-width:390px;margin:0 0 32px}.hero-actions{display:flex;align-items:center;gap:25px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:48px;padding:0 21px;font-size:10px;letter-spacing:.02em;transition:transform .3s,background .3s,color .3s}.btn:hover{transform:translateY(-3px)}.btn b{font-size:16px;font-weight:400}.btn-cream{background:var(--green);color:#fff}.btn-cream:hover{background:var(--red)}.under-link{font-size:10px;border-bottom:1px solid var(--gold);padding:0 0 7px}.under-link span{margin-left:9px}.hero-meta{display:flex;align-items:center;gap:14px;margin-top:54px;color:#777067;font-size:8px;letter-spacing:.13em;line-height:1.8}.hero-meta b{font-size:9px;letter-spacing:0;color:var(--ink);font-weight:500}.meta-star{font-size:28px;color:var(--gold)}.hero-visual{position:relative;min-height:600px;align-self:stretch;margin:0 -7.2% 0 0;overflow:hidden;background:#342a21}.hero-image-frame{position:absolute;inset:0;overflow:hidden}.hero-image-frame img{width:100%;height:100%;object-fit:cover;object-position:55% center;transform:scale(1.06);will-change:transform}.hero-image-shade{position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(15,31,24,.58));pointer-events:none}.hero-image-caption{position:absolute;left:8%;right:8%;bottom:34px;display:flex;justify-content:space-between;color:#fff;font-size:8px;letter-spacing:.19em}.hero-seal{position:absolute;right:7%;top:12%;width:104px;height:104px;border:1px solid #f3e8d4a6;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:8px;letter-spacing:.2em;transform:rotate(10deg)}.hero-seal b{font-size:25px;font-weight:400;color:var(--gold);margin:2px}.hero-scroll{position:absolute;bottom:27px;left:7.2%;display:flex;align-items:center;gap:12px;font-size:7px;letter-spacing:.2em;color:var(--muted)}.hero-scroll span{height:32px;width:1px;background:var(--gold)}.hero-index{position:absolute;bottom:31px;left:45%;font-size:9px;color:var(--muted);letter-spacing:.1em}.hero-index i{font-style:normal;color:var(--gold);padding:0 7px}.intro{padding:84px 12%;display:grid;grid-template-columns:190px 1fr 150px;gap:45px;align-items:start;background:#e9e0d4}.intro-kicker{font-size:8px;letter-spacing:.2em;line-height:1.8;color:var(--red)}.intro-main p{font:400 clamp(24px,3vw,38px)/1.45 var(--serif);margin:0;color:var(--green);max-width:750px}.intro-main p em{color:var(--red)}.intro-main>span{display:block;margin-top:20px;font:italic 14px var(--serif);color:var(--muted)}.intro-main>span b{font-weight:500;color:var(--green)}.intro-side{display:flex;flex-direction:column;align-items:flex-end;gap:14px;color:var(--muted);font-size:7px;letter-spacing:.17em}.intro-side span:first-child{font:italic 26px var(--serif);color:var(--gold)}.intro-side i{width:35px;height:1px;background:var(--gold)}.section{padding:105px 7.2%}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-head h2,.experience-title h2,.visit-heading h2{font:400 clamp(43px,5vw,66px)/1.08 var(--serif);letter-spacing:-.035em;color:var(--green);margin:0}.section-note{max-width:290px;margin:0 4% 5px 30px;color:var(--muted);font-size:11px;line-height:1.9}.collection-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:28px;align-items:start}.collection-card{display:block;min-width:0}.collection-photo{height:320px;position:relative;overflow:hidden;background:#d6c8b7}.collection-main .collection-photo{height:380px}.collection-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(14,28,21,.28));pointer-events:none}.collection-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1);display:block}.collection-card:hover .collection-photo img{transform:scale(1.055)}.collection-main .collection-photo img{object-position:center 35%}.collection-card:not(.collection-main) .collection-photo img{object-position:center 48%}.photo-count{position:absolute;top:18px;left:18px;z-index:1;color:#fff;font-size:8px;letter-spacing:.18em}.round-arrow{position:absolute;right:17px;bottom:17px;z-index:1;width:36px;height:36px;border:1px solid #ffffffb8;border-radius:50%;display:grid;place-items:center;color:white;font-size:16px;font-weight:400;transition:background .25s}.collection-card:hover .round-arrow{background:var(--red);border-color:var(--red)}.collection-info{padding:18px 0 17px;border-bottom:1px solid var(--line)}.collection-info span{font-size:8px;letter-spacing:.17em;color:var(--red)}.collection-info h3{font:500 21px var(--serif);margin:8px 0 0;color:var(--green)}.collection-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;color:var(--muted);font-size:9px}.collection-bottom a{color:var(--green);font-size:8px;letter-spacing:.15em;border-bottom:1px solid var(--gold);padding-bottom:6px}.size-section{position:relative;overflow:hidden;background:var(--green);color:#fff;padding:78px 12%;display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.size-number{display:flex;flex-direction:column;align-items:flex-start;position:relative;z-index:1}.size-number>span:first-child{font-size:9px;letter-spacing:.25em;color:#d5bd8d}.size-number strong{font:400 clamp(65px,9vw,120px)/1 var(--serif);letter-spacing:-.08em;color:#f4eee5}.size-number strong span{font-size:.55em;color:var(--gold);padding:0 9px}.size-number>span:last-child{font-size:8px;letter-spacing:.24em;color:#d5bd8d;margin-top:17px}.size-copy{position:relative;z-index:1}.size-copy .eyebrow{color:#d9bd86}.size-copy h2{font:400 clamp(37px,4vw,55px)/1.1 var(--serif);margin:0 0 20px;color:#fff}.size-copy h2 em{color:#e1c18a}.size-copy>p:not(.eyebrow){max-width:430px;color:#d3d8d1;font-size:11px;line-height:1.9}.text-arrow{display:inline-flex;gap:20px;align-items:center;margin-top:17px;padding-bottom:7px;border-bottom:1px solid var(--gold);font-size:9px;color:#fff}.text-arrow b{font-size:15px;font-weight:400;color:var(--gold)}.size-decoration{position:absolute;right:5%;top:-55px;font-size:260px;color:#ffffff08}.experience{display:grid;grid-template-columns:.75fr 1.25fr;gap:10%;background:var(--paper)}.experience-title{align-self:start;position:sticky;top:125px}.experience-title h2{font-size:clamp(42px,4.7vw,62px)}.experience-list{border-top:1px solid var(--line)}.experience-item{display:grid;grid-template-columns:45px 1fr 25px;gap:15px;align-items:start;padding:27px 0;border-bottom:1px solid var(--line)}.experience-item>span{font:italic 18px var(--serif);color:var(--gold)}.experience-item h3{font:500 22px var(--serif);color:var(--green);margin:0 0 8px}.experience-item p{font-size:10px;line-height:1.8;color:var(--muted);max-width:440px;margin:0}.experience-item>b{font-size:21px;font-weight:400;color:var(--red)}.quote-band{padding:88px 20px 94px;text-align:center;background:#e9e0d4}.quote-symbol{font:80px/.65 var(--serif);color:var(--gold)}.quote-band p{font:400 clamp(24px,3.2vw,39px)/1.4 var(--serif);color:var(--green);margin:22px auto 21px}.quote-band p em{color:var(--red)}.quote-band>span{font-size:8px;letter-spacing:.2em;color:var(--muted)}.visit{padding-top:95px;padding-bottom:75px}.visit-heading{display:grid;grid-template-columns:1fr 310px;column-gap:40px;align-items:end;margin-bottom:42px}.visit-heading .eyebrow{grid-column:1/-1}.visit-heading h2{grid-column:1}.visit-heading>p:last-child{font-size:11px;line-height:1.9;color:var(--muted);margin:0 0 6px}.visit-card{display:grid;grid-template-columns:.85fr 1.15fr;min-height:420px;background:var(--green-dark);color:#fff}.visit-details{padding:48px 12%}.visit-overline{font-size:8px;letter-spacing:.2em;color:#d9bd86}.visit-pin{font-size:28px;color:var(--gold);margin:22px 0 9px}.visit-details h3{font:400 36px/1.17 var(--serif);margin:0 0 20px}.visit-details>p{font-size:11px;line-height:1.8;color:#d6ded7}.visit-details .appointment{margin-top:19px;color:#b9c9bd}.appointment b{color:#fff;font-weight:500}.btn-light{background:var(--paper);color:var(--green);margin-top:15px}.btn-light:hover{background:var(--gold)}.visit-image{position:relative;overflow:hidden;min-height:420px}.visit-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:72% center;filter:saturate(.88)}.visit-image:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(12,31,23,.52))}.visit-image-caption{position:absolute;z-index:1;right:30px;bottom:28px;text-align:right;font:500 18px/1.3 var(--serif);letter-spacing:.08em;color:#fff}.contact-line{display:flex;align-items:center;gap:26px;padding-top:27px}.contact-line>div{display:flex;flex-direction:column;gap:6px;margin-right:auto}.contact-line>div span{font-size:8px;letter-spacing:.18em;color:var(--red)}.contact-line>div b{font:500 20px var(--serif)}.btn-dark{background:var(--green);color:#fff}.btn-dark:hover{background:var(--red)}.save-contact{border:0;border-bottom:1px solid var(--green);background:transparent;color:var(--green);padding:10px 0;font-size:9px;cursor:pointer}.footer{min-height:125px;padding:27px 7.2%;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:18px;background:#eee6dc;color:var(--muted);font-size:9px}.footer-logo{justify-self:start;font-size:23px}.footer>span{text-align:center}.footer>a:not(.logo){justify-self:end;font-size:8px;letter-spacing:.15em;color:var(--green)}.footer small{grid-column:1/-1;text-align:center;font-size:8px;letter-spacing:.04em}.floating-instagram{position:fixed;right:22px;bottom:22px;z-index:10;width:47px;height:47px;border-radius:50%;background:var(--red);color:white;display:grid;place-items:center;font-size:27px;box-shadow:0 6px 22px #33251e33;transition:transform .25s}.floating-instagram:hover{transform:translateY(-4px) rotate(-8deg)}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--green);color:#fff;padding:12px 18px;font-size:11px;opacity:0;pointer-events:none;transition:.3s;z-index:40}.toast.show{opacity:1;transform:translate(-50%,0)}
/* Scroll-triggered entrance choreography */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.23s}.delay-3{transition-delay:.34s}
@media(max-width:950px){.header{padding:0 5%}.nav{gap:19px}.hero{padding-left:5%;padding-right:5%;grid-template-columns:.9fr 1.1fr}.hero-visual{margin-right:-5%}.hero-copy{padding-right:4%}.intro{padding-left:7%;padding-right:7%;grid-template-columns:140px 1fr 90px;gap:25px}.section{padding-left:5%;padding-right:5%}.collection-photo{height:275px}.collection-main .collection-photo{height:325px}.size-section{padding-left:8%;padding-right:8%}.visit-details{padding-left:9%;padding-right:9%}.footer{padding-left:5%;padding-right:5%}}
@media(max-width:680px){html{scroll-padding-top:76px}.topline{height:26px;font-size:6px;letter-spacing:.13em;gap:8px}.header,.header.scrolled{height:70px;padding:0 21px}.logo{font-size:25px}.menu-toggle{display:flex;flex-direction:column;gap:6px;border:0;background:transparent;padding:10px;cursor:pointer}.menu-toggle span{width:23px;height:1px;background:var(--green);display:block;transition:transform .25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.nav{display:none;position:absolute;top:69px;left:0;right:0;padding:14px 22px 22px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 18px 25px #0000000b;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav>a{padding:14px 2px;border-bottom:1px solid var(--line);font-size:11px}.nav .nav-contact{margin-top:13px;text-align:center;border:0;padding:15px}.hero{display:flex;flex-direction:column;padding:39px 21px 65px;min-height:0}.hero-copy{padding:0 0 27px}.eyebrow{font-size:7px;margin-bottom:17px}.hero h1{font-size:58px;margin-bottom:17px}.hero-lead{font-size:11px;line-height:1.85;margin-bottom:25px}.hero-actions{gap:19px}.btn{min-height:45px;padding:0 16px;gap:17px;font-size:9px}.under-link{font-size:9px}.hero-meta{margin-top:27px}.hero-visual{margin:0;min-height:390px;width:100%}.hero-image-frame img{object-position:55% center}.hero-seal{width:80px;height:80px;right:5%;top:8%;font-size:7px}.hero-seal b{font-size:19px}.hero-image-caption{left:5%;right:5%;bottom:20px;font-size:6px;letter-spacing:.12em}.hero-scroll{left:21px;bottom:18px;font-size:6px}.hero-scroll span{height:24px}.hero-index{display:none}.intro{display:block;padding:44px 23px}.intro-kicker{margin-bottom:19px;font-size:7px}.intro-main p{font-size:27px;line-height:1.42}.intro-main>span{font-size:13px}.intro-side{display:none}.section{padding:70px 21px}.section-head{display:block;margin-bottom:28px}.section-head h2,.experience-title h2,.visit-heading h2{font-size:47px}.section-note{margin:18px 0 0;font-size:10px}.collection-grid{grid-template-columns:1fr 1fr;gap:25px 13px}.collection-main{grid-column:1/-1}.collection-photo,.collection-main .collection-photo{height:230px}.collection-main .collection-photo{height:300px}.collection-info{padding:13px 0}.collection-info span{font-size:7px}.collection-info h3{font-size:17px}.collection-bottom{display:block;font-size:8px;line-height:1.8}.collection-bottom a{display:inline-block;margin-top:12px}.size-section{padding:52px 24px 57px;grid-template-columns:1fr;gap:28px}.size-number strong{font-size:82px}.size-copy h2{font-size:43px}.size-copy>p:not(.eyebrow){font-size:10px}.size-decoration{font-size:170px;top:-25px;right:-15px}.experience{display:block}.experience-title{position:static;margin-bottom:35px}.experience-title h2{font-size:46px}.experience-item{grid-template-columns:30px 1fr 20px;gap:10px;padding:23px 0}.experience-item h3{font-size:19px}.experience-item p{font-size:9px}.quote-band{padding:65px 20px 70px}.quote-band p{font-size:25px}.quote-band p br{display:none}.quote-band>span{font-size:7px}.visit{padding-top:68px;padding-bottom:50px}.visit-heading{display:block;margin-bottom:28px}.visit-heading>p:last-child{margin-top:16px;font-size:10px}.visit-heading h2{font-size:46px}.visit-card{grid-template-columns:1fr}.visit-details{padding:35px 24px}.visit-details h3{font-size:32px}.visit-image{min-height:265px}.visit-image-caption{font-size:15px;right:19px;bottom:20px}.contact-line{flex-wrap:wrap;gap:15px}.contact-line>div{width:100%;margin-bottom:4px}.contact-line .btn{flex:1}.save-contact{font-size:8px}.footer{padding:25px 21px;grid-template-columns:1fr 1fr;gap:16px}.footer-logo{font-size:22px}.footer>span{text-align:right;font-size:8px}.footer>a:not(.logo){grid-column:1/-1;justify-self:start}.footer small{grid-column:1/-1;text-align:left}.floating-instagram{right:14px;bottom:14px;width:43px;height:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* A graphic, non-photographic visit panel avoids repeating the hero portrait. */
.visit-art{background:radial-gradient(ellipse at 78% 22%,rgba(201,168,108,.2),transparent 38%),linear-gradient(135deg,#31594a,#102b23);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;overflow:hidden}.visit-art:before,.visit-art:after{content:"";position:absolute;border:1px solid rgba(221,194,143,.35);border-radius:50%;width:440px;height:440px;left:50%;top:50%;transform:translate(-50%,-50%)}.visit-art:after{width:340px;height:340px}.visit-art-number{position:relative;z-index:1;font:400 clamp(65px,8vw,112px)/1 var(--serif);letter-spacing:-.07em;color:#f4eee5}.visit-art-number span{font-size:.55em;color:var(--gold);padding:0 8px}.visit-art-script{position:relative;z-index:1;text-align:center;font:400 clamp(24px,3vw,38px)/1.2 var(--serif);color:#f4eee5}.visit-art-script em{color:#dfc18a}.visit-art .visit-image-caption{z-index:2}
