.asp-panel{--paper:#f8f5ed;--ink:#262820;--muted:#6e7065;--line:#d9dbcf;--accent:#69745b}.asp-panel *{box-sizing:border-box}.asp-panel{scroll-behavior:smooth}.asp-panel{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}.asp-panel button,.asp-panel a{-webkit-tap-highlight-color:transparent}.asp-panel a{color:inherit;text-decoration:none}.asp-panel button{font:inherit;cursor:pointer}.asp-panel header{max-width:1500px;margin:auto;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.asp-panel .brand{font-family:Georgia,serif;font-size:29px;letter-spacing:-1.2px}.asp-panel .brand small{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:3.8px;margin-top:5px}.asp-panel .nav{display:flex;align-items:center;gap:35px;font-size:12px}.asp-panel .nav a:hover{color:var(--accent)}.asp-panel .contact{border-bottom:1px solid var(--ink);padding-bottom:7px}.asp-panel .intro{text-align:center;padding:52px 20px 8px}.asp-panel .eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--muted)}.asp-panel h1,.asp-panel h2{font-family:Georgia,serif;font-weight:400}.asp-panel h1{font-size:clamp(35px,4vw,60px);line-height:1.12;margin:18px 0 16px;letter-spacing:-1.8px}.asp-panel h1 em{color:var(--accent);font-weight:400}.asp-panel .intro p{font-size:13px;color:var(--muted);line-height:1.8;margin:0}.asp-panel .gallery{position:relative;height:clamp(340px,43vw,620px);overflow:hidden;margin-top:16px;touch-action:pan-y;cursor:grab;isolation:isolate}.asp-panel .gallery:active{cursor:grabbing}.asp-panel .track{height:100%;display:flex;gap:7px;will-change:transform}.asp-panel .tile{flex:0 0 38vw;min-width:320px;height:100%;position:relative;border:0;padding:0;background:#d7d8ca;overflow:hidden;color:white;text-align:left}.asp-panel .tile img{width:100%;height:100%;object-fit:cover;pointer-events:none;transition:transform .8s}.asp-panel .tile:hover img{transform:scale(1.04)}.asp-panel .tile:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#1118)}.asp-panel .tile-label{position:absolute;bottom:90px;left:30px;z-index:1;display:flex;justify-content:space-between;align-items:end;right:30px}.asp-panel .tile-label small{font-size:9px;letter-spacing:2px;text-transform:uppercase}.asp-panel .tile-label strong{display:block;font:27px Georgia,serif;margin-top:9px}.asp-panel .tile-label span{font-size:24px}.asp-panel .curve{position:absolute;left:0;width:100%;height:19%;pointer-events:none;z-index:3;fill:var(--paper)}.asp-panel .curve.top{top:-1px}.asp-panel .curve.bottom{bottom:-1px;transform:rotate(180deg)}.asp-panel .gallery-toolbar{max-width:1370px;margin:10px auto 0;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:12px}.asp-panel .hint{font-size:10px;letter-spacing:1.5px;color:var(--muted);text-transform:uppercase}.asp-panel .controls{display:flex;gap:8px}.asp-panel .round{border:1px solid #bcbfb1;border-radius:50%;height:38px;width:38px;background:transparent;color:var(--ink)}.asp-panel .round:hover{background:var(--ink);color:var(--paper)}.asp-panel .statement{text-align:center;padding:34px 20px 48px}.asp-panel .statement h2{font-size:clamp(30px,3.1vw,47px);margin:0 0 15px;letter-spacing:-1px}.asp-panel .statement p{max-width:480px;margin:auto;font-size:13px;line-height:1.9;color:var(--muted)}.asp-panel .categories{display:flex;justify-content:center;gap:10px;margin:25px 0 0}.asp-panel .pill{border:1px solid #bfc3b5;background:transparent;border-radius:30px;padding:10px 18px;font-size:10px;letter-spacing:.5px}.asp-panel .pill[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.asp-panel footer{border-top:1px solid var(--line);margin:0 5%;padding:20px 0;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);gap:20px}.asp-panel dialog{padding:0;border:none;background:#171a15;color:white;width:min(1100px,92vw);max-height:92vh}.asp-panel dialog::backdrop{background:#0e100ee8;backdrop-filter:blur(7px)}.asp-panel dialog img{display:block;width:100%;max-height:73vh;object-fit:contain}.asp-panel dialog .caption{padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.asp-panel dialog h2{margin:0 0 7px;font-size:26px}.asp-panel dialog p{margin:0;font-size:11px;color:#c2c7ba}.asp-panel .close{background:#f8f5ed;color:#262820;border:0;border-radius:50%;width:38px;height:38px}.asp-panel button:focus-visible,.asp-panel a:focus-visible{outline:3px solid #a28857;outline-offset:4px}.asp-panel .note{font-size:9px;letter-spacing:.3px}@media(max-width:650px){.asp-panel header{padding:23px 6%}.asp-panel .brand{font-size:25px}.asp-panel .nav{gap:15px}.asp-panel .nav .desktop{display:none}.asp-panel .intro{padding:37px 22px 4px}.asp-panel h1{letter-spacing:-1px}.asp-panel .intro p{font-size:12px;max-width:300px;margin:auto}.asp-panel .gallery{height:410px;margin-top:20px}.asp-panel .tile{flex-basis:83vw;min-width:0}.asp-panel .tile-label{left:24px;right:24px;bottom:78px}.asp-panel .tile-label strong{font-size:25px}.asp-panel .statement{padding-top:32px}.asp-panel .statement p{max-width:310px}.asp-panel .hint{font-size:8px}.asp-panel .categories{gap:6px}.asp-panel .pill{padding:10px 13px}.asp-panel footer{font-size:9px;line-height:1.6}.asp-panel .note{max-width:165px;text-align:right}}@media(prefers-reduced-motion:reduce){.asp-panel{scroll-behavior:auto}.asp-panel .tile img{transition:none}}

.asp-panel{display:block;overflow:hidden;font-family:Arial,sans-serif;background:var(--paper);color:var(--ink)}.asp-panel .intro{padding-top:70px}.asp-panel .intro h1{font-family:Georgia,serif;text-transform:none}.asp-panel .gallery{padding:0}.asp-panel .statement{padding-bottom:45px}.asp-panel .tile-label{white-space:normal}.asp-panel .hint{line-height:1.5}/* Reserve the fixed theme navigation without changing other pages. */
.home-page .asp-panel{padding-top:90px}
@media(max-width:650px){.home-page .asp-panel{padding-top:75px}.asp-panel .intro{padding-top:35px}}

/* 3.3.2 — editorial typography, wider curve, and safe caption clearance. */
.asp-panel .intro{padding:64px 24px 18px;text-align:center}
.asp-panel .intro .eyebrow{font-family:var(--sans,Arial,sans-serif);font-size:10px;font-weight:500;letter-spacing:.24em;display:flex;align-items:center;justify-content:center;gap:18px;color:#68725e}
.asp-panel .intro .eyebrow::before,.asp-panel .intro .eyebrow::after{content:"";display:block;width:45px;height:1px;background:#b7bba8}
.asp-panel .intro h1{font-family:var(--serif,Georgia,serif);font-weight:400;font-size:clamp(46px,6.3vw,92px);line-height:1.02;letter-spacing:-.045em;margin:25px auto 24px;max-width:1150px}
.asp-panel .asp-title-line{display:block}
.asp-panel .intro h1 em{font-weight:400;color:#647154;letter-spacing:-.035em}
.asp-panel .intro p{max-width:510px;margin:0 auto;font-family:var(--sans,Arial,sans-serif);font-size:14px;line-height:1.9;color:#73776b;letter-spacing:.015em}
.asp-panel .gallery{height:clamp(450px,46vw,690px);margin-top:20px}
.asp-panel .curve{height:20%}
.asp-panel .tile-label{bottom:calc(20% + 28px);left:32px;right:32px;align-items:flex-end;gap:18px}
.asp-panel .tile-label strong{font-family:var(--serif,Georgia,serif);font-size:clamp(27px,2.6vw,38px);line-height:1.12;font-weight:400;max-width:360px;margin-top:12px;text-shadow:0 2px 16px #0004}
.asp-panel .tile-label small{font-family:var(--sans,Arial,sans-serif);font-size:10px;letter-spacing:.2em;line-height:1.5}
.asp-panel .tile-label>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border:1px solid #ffffff80;border-radius:50%;font-size:19px}
.asp-panel dialog.asp-detail-dialog{width:min(1200px,94vw);max-height:92dvh;background:#f8f5ed;color:#262820;padding:0;border:0;overflow:auto}
.asp-panel .asp-detail-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);min-height:460px}
.asp-panel .asp-detail-stage{display:grid;place-items:center;background:#20271f;min-width:0}
.asp-panel dialog .asp-detail-stage img{width:100%;height:100%;max-height:86dvh;min-height:400px;object-fit:contain;margin:0}
.asp-panel .asp-detail-copy{padding:66px 38px 38px;align-self:center}
.asp-panel .asp-detail-category{font:10px var(--sans,Arial,sans-serif);letter-spacing:.18em;color:#657253;text-transform:uppercase;margin:0 0 18px}
.asp-panel .asp-detail-copy h2{font:400 clamp(34px,3.5vw,49px)/1.07 var(--serif,Georgia,serif);letter-spacing:-.025em;margin:0 0 23px;text-transform:none}
.asp-panel #asp-modalDescription{font:15px/1.85 var(--sans,Arial,sans-serif);color:#626b5c;white-space:pre-line}
.asp-panel .asp-detail-note{font:10px/1.8 var(--sans,Arial,sans-serif);color:#7c8275;border-top:1px solid #d8dccf;margin-top:26px;padding-top:17px}
.asp-panel .asp-detail-navigation{display:flex;align-items:center;gap:16px;margin-top:26px}
.asp-panel #asp-detail-count{font:10px var(--sans,Arial,sans-serif);letter-spacing:.16em;color:#6d7663}
.asp-panel .asp-detail-close{position:absolute;right:15px;top:15px;z-index:5;background:#f8f5ed;border:1px solid #b8c0ac}
@media(max-width:700px){.asp-panel .intro{padding:34px 22px 12px}.asp-panel .intro .eyebrow{font-size:8px;letter-spacing:.15em;gap:9px}.asp-panel .intro .eyebrow::before,.asp-panel .intro .eyebrow::after{width:18px;flex-shrink:0}.asp-panel .intro h1{font-size:clamp(41px,9.6vw,65px);line-height:1.04;margin:23px 0 21px;letter-spacing:-.04em}.asp-panel .intro p{font-size:12px;max-width:310px;line-height:1.85}.asp-panel .gallery{height:460px}.asp-panel .tile-label{bottom:calc(20% + 24px);left:24px;right:24px}.asp-panel .tile-label strong{font-size:30px;max-width:240px}.asp-panel .asp-detail-layout{grid-template-columns:1fr}.asp-panel dialog .asp-detail-stage img{min-height:0;max-height:46dvh;height:auto}.asp-panel .asp-detail-copy{padding:28px}.asp-panel .asp-detail-copy h2{font-size:36px}.asp-panel #asp-modalDescription{font-size:14px}.asp-panel .asp-detail-category{padding-right:25px}}
.asp-panel dialog.asp-detail-dialog{margin:auto;inset:0}

/* 3.3.3 — navigation, moving gallery, then logo and introduction. */
body.home header>.logo,body.home header>.wp-site-logo{display:none}
body.home header{min-height:76px;background:rgba(248,245,237,.96)}
body.home header nav.desk{margin-left:auto;margin-right:auto}
.home-page .asp-panel{padding-top:76px}
.asp-panel .gallery{margin-top:0;height:clamp(440px,42vw,620px)}
.asp-panel .curve.top{height:8%}
.asp-panel .gallery-toolbar{margin-top:8px}
.asp-panel .intro{padding-top:48px;padding-bottom:44px}
.asp-panel .asp-intro-logo{display:flex;align-items:center;justify-content:center;margin:0 auto 28px}
.asp-panel .asp-intro-logo img{display:block;width:auto;max-width:210px;max-height:115px;object-fit:contain;cursor:default}
.asp-panel .statement{padding-top:20px}
@media(max-width:700px){body.home header{min-height:62px;justify-content:flex-end}.home-page .asp-panel{padding-top:62px}.asp-panel .gallery{height:450px}.asp-panel .intro{padding-top:34px;padding-bottom:30px}.asp-panel .asp-intro-logo{margin-bottom:24px}.asp-panel .asp-intro-logo img{max-width:180px;max-height:96px}}
body.home header>.logo,body.home header>.wp-site-logo{display:none!important}
