:root{--paper:#f3ead6;--paper2:#ebe0c6;--ink:#2a2622;--ink2:#4a4426;--salmon:#e8915c;--salmon2:#d97f4a;--olive:#6f7a3a;--olive2:#55602a;--sage:#aab28a;--mustard:#d9a93c;--gold:#cfa64f;--terracotta:#c8623f;--teal:#2b5c52}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;line-height:1.55;-webkit-font-smoothing:antialiased}
body::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");z-index:0}
.rail{display:none}
@media(min-width:1280px){.rail{display:block;position:fixed;top:0;bottom:0;width:84px;background-repeat:repeat-y;background-size:84px auto;z-index:1}.rail.l{left:0;background-image:url(assets/rail-left.jpg)}.rail.r{right:0;background-image:url(assets/rail-right.jpg)}}
.page{position:relative;z-index:2}
h1,h2,h3,.federo{font-family:Federo,"Cormorant Garamond",serif;font-weight:400;letter-spacing:.06em;margin:0}
a{color:var(--terracotta);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px}
/* masthead = the Hague lettering band */
.mast{background:var(--salmon);color:var(--ink2);text-align:center;padding:34px 20px 34px;border-top:6px solid var(--ink2)}
.mast .name{font-size:clamp(20px,4.5vw,44px);letter-spacing:.14em;line-height:1}
.mast .wordmark{font-size:clamp(34px,9.2vw,98px);letter-spacing:.08em;line-height:1;margin-top:18px}
.mast .sub{font-family:"Cormorant Garamond",serif;font-weight:700;letter-spacing:.3em;text-transform:uppercase;font-size:clamp(11px,1.5vw,16px);line-height:1;margin-top:20px}
.bees{height:38px;background:url(assets/bee-band.jpg) center/auto 100% repeat-x;border-top:3px solid var(--ink2);border-bottom:3px solid var(--ink2)}
nav{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 34px;padding:18px 20px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;font-size:13px;border-bottom:1px solid rgba(74,68,38,.25)}
nav a{color:var(--ink2)}nav a:hover{color:var(--terracotta);text-decoration:none}
/* hero */
.hero{padding:56px 0 24px;text-align:center}
.hero .art{position:relative;display:inline-block;width:min(668px,100%);padding:14px;background:var(--paper2);box-shadow:0 30px 70px rgba(40,30,10,.25)}
.hero .art::before{content:"";position:absolute;inset:6px;border:2px solid var(--olive);pointer-events:none}
.hero .art::after{content:"";position:absolute;inset:11px;border:1px solid var(--ink2);opacity:.6;pointer-events:none}
.hero img{display:block;width:100%;height:auto}
.hero .tag{font-size:clamp(21px,2.6vw,28px);font-style:italic;max-width:720px;margin:34px auto 0}
.hero .when{font-family:Federo,serif;letter-spacing:.2em;text-transform:uppercase;font-size:14px;color:var(--olive2);margin-top:14px}
.hero .when b{color:var(--terracotta);font-weight:400}
.cta{display:inline-flex;gap:14px;align-items:center;margin-top:26px;font-family:Federo,serif;letter-spacing:.14em;font-size:18px}
.cta a{display:inline-block;padding:12px 26px;border:2px solid var(--ink2);color:var(--ink2);background:transparent}
.cta a:hover{background:var(--ink2);color:var(--paper);text-decoration:none}
/* sections */
section{padding:72px 0}
section+section{border-top:1px solid rgba(74,68,38,.18)}
.sec-head{text-align:center;margin-bottom:38px}
.sec-head h2{font-size:clamp(28px,3.6vw,40px);letter-spacing:.1em;color:var(--ink2)}
.sec-head .orn{width:min(420px,80%);height:auto;margin:10px auto 0;display:block}
.lede{font-size:clamp(20px,2.3vw,24px);max-width:760px;margin:0 auto;text-align:center}
.prose{max-width:720px;margin:0 auto}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
@media(max-width:820px){.two{grid-template-columns:1fr}}
.photo{position:relative;background:var(--paper2);padding:10px;box-shadow:0 18px 50px rgba(40,30,10,.22)}
.photo::before{content:"";position:absolute;inset:5px;border:1.5px solid var(--olive);pointer-events:none}
.photo img{display:block;width:100%;height:auto;object-fit:cover}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}
@media(max-width:820px){.three{grid-template-columns:1fr;gap:30px}}
.three svg{width:150px;height:150px;display:block;margin:0 auto 10px}
.three h3{font-size:24px;letter-spacing:.12em;color:var(--ink2)}
.three p{margin:8px auto 0;max-width:300px}
.callout{background:var(--paper2);border:2px solid var(--olive);padding:34px 36px;max-width:820px;margin:0 auto;position:relative}
.callout::before{content:"";position:absolute;inset:5px;border:1px solid var(--ink2);opacity:.45;pointer-events:none}
.callout h2{font-size:clamp(22px,3.2vw,30px);letter-spacing:.1em;color:var(--ink2);text-align:center}
.callout p{text-align:center;max-width:620px;margin:14px auto 0}
.addr{font-size:22px}
.addr .federo{display:block;font-size:26px;letter-spacing:.1em;color:var(--ink2);margin-bottom:8px}
.addr dl{margin:22px 0 0}
.addr dt{font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:12px;color:var(--olive2);margin-top:16px}
.addr dd{margin:2px 0 0}
.map{border:2px solid var(--olive);padding:6px;background:var(--paper2)}
.map iframe{display:block;width:100%;height:360px;border:0;filter:sepia(.35) saturate(.75)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:820px){.gallery{grid-template-columns:repeat(2,1fr)}}
.gallery figure{margin:0;cursor:zoom-in}
.gallery .photo img{aspect-ratio:4/5}
.gallery .soon{aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;background:var(--paper2);font-family:Federo,serif;letter-spacing:.2em;font-size:13px;color:var(--olive2);text-transform:uppercase;cursor:default}
.gallery figcaption{text-align:center;font-style:italic;margin-top:8px;font-size:17px}
.contact{text-align:center}
.contact .big{font-family:Federo,serif;font-size:clamp(28px,4vw,40px);letter-spacing:.1em;color:var(--ink2);display:block;margin-top:10px}
.contact .mail{font-size:22px;display:block;margin-top:6px}
footer{margin-top:40px;background:var(--olive2);color:var(--paper);padding:40px 20px;text-align:center;font-size:16px;letter-spacing:.06em}
footer .fm{font-family:Federo,serif;letter-spacing:.14em;font-size:20px;color:var(--paper)}
footer .peace{width:34px;height:34px;display:block;margin:0 auto 14px}
footer p{margin:6px 0 0}
#lb{position:fixed;inset:0;background:rgba(30,26,18,.94);display:none;align-items:center;justify-content:center;z-index:50;cursor:zoom-out}
#lb.on{display:flex}#lb img{max-width:92vw;max-height:92vh;box-shadow:0 30px 80px #000}

.med{width:150px;height:150px;border-radius:50%;margin:0 auto 10px;background:#b9bf98;position:relative;overflow:hidden}
.med::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 3px var(--ink2),inset 0 0 0 6px var(--paper),inset 0 0 0 8px var(--gold);pointer-events:none}
.med img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;margin:0}
.sec-head .orn{width:min(300px,70%)}
