@font-face{font-family:Cormorant;src:url(../fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Cormorant;src:url(../fonts/cormorant-garamond-latin-600-normal.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Cormorant;src:url(../fonts/cormorant-garamond-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-latin-300-normal.woff2) format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-latin-400-normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-latin-500-normal.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
:root{--ink:#1c1b1a;--char:#252422;--slate:#3a3b3d;--merle:#8a8d90;--mist:#d9d6cf;--cream:#f4efe6;--gold:#b8955a;--gold2:#d4b47c;--serif:Cormorant,Georgia,serif;--sans:Inter,system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--cream);color:var(--ink);font:300 1rem/1.7 var(--sans);overflow-x:hidden}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{width:min(1180px,100% - 2.5rem);margin-inline:auto}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.1;letter-spacing:.005em}
h1{font-size:clamp(2.6rem,9vw,5.6rem)}
h2{font-size:clamp(1.9rem,5vw,3rem);margin-bottom:1rem}
h3{font-size:1.45rem;margin-bottom:.4rem}
p+p{margin-top:1rem}
.eyebrow{font:500 .7rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}
.lede{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(1.25rem,3.2vw,1.6rem);line-height:1.35;max-width:34ch;margin-top:1rem}
.lede.dark{color:var(--slate)}
.top{position:sticky;top:0;z-index:20;background:rgba(28,27,26,.94);backdrop-filter:blur(8px);color:var(--cream);border-bottom:1px solid rgba(212,180,124,.18)}
.top-in{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{font-family:var(--serif);font-weight:600;font-size:1.35rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.top nav{display:flex;gap:1.6rem}
.top nav a,.foot nav a{text-decoration:none;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;opacity:.8}
.top nav a:hover,.top nav a[aria-current]{opacity:1;color:var(--gold2)}
.burger{display:none;background:none;border:0;width:36px;height:36px;cursor:pointer}
.burger span{display:block;height:1px;background:var(--cream);margin:7px 6px;transition:.3s}
@media(max-width:899px){.burger{display:block}.top nav{position:absolute;top:60px;left:0;right:0;flex-direction:column;gap:0;background:var(--ink);max-height:0;overflow:hidden;transition:max-height .35s}.top nav a{padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.06)}.top.open nav{max-height:420px}.top.open .burger span:first-child{transform:translateY(4px) rotate(45deg)}.top.open .burger span:last-child{transform:translateY(-4px) rotate(-45deg)}}
.hero,.phero{position:relative;color:var(--cream);background:var(--char);overflow:hidden;display:flex;align-items:flex-end}
.hero{min-height:calc(100svh - 84px)}
.phero{min-height:62svh}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,27,26,.15) 0%,rgba(28,27,26,.25) 45%,rgba(28,27,26,.88) 100%)}
.hero-txt{position:relative;padding:3rem 0 3.2rem}
.hero h1{text-transform:uppercase;letter-spacing:.06em}
.cta-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.btn{display:inline-block;background:var(--gold);color:var(--ink);font:500 .75rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;padding:1.05rem 1.6rem;border:1px solid var(--gold);cursor:pointer;transition:.25s}
.btn:hover{background:var(--gold2)}
.btn.ghost{background:transparent;color:var(--cream);border-color:rgba(244,239,230,.5)}
.link{display:inline-block;margin-top:1.4rem;color:var(--gold);font:500 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.3rem}
section.wrap{padding-block:4.5rem}
.intro{text-align:center;max-width:760px}
.intro p:last-child{font-size:1.08rem}
.pillars{display:grid;gap:2.2rem;grid-template-columns:1fr;padding-top:0!important}
.pillars div{border-top:1px solid var(--gold);padding-top:1.2rem}
.num{font-family:var(--serif);color:var(--gold);font-size:1.1rem}
@media(min-width:700px){.pillars{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.pillars{grid-template-columns:repeat(4,1fr)}}
.split{display:grid;gap:2rem;align-items:center}
.split figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media(min-width:900px){.split{grid-template-columns:1fr 1fr;gap:5rem}.split.rev figure{order:2}}
.band{background:var(--ink);color:var(--cream)}
.band-in{padding:4rem 0;text-align:center}
.band-in p{margin:0 0 1.6rem;color:var(--mist)}
.prose{max-width:720px}
.prose .drop{font-family:var(--serif);font-size:clamp(1.5rem,4vw,2rem);line-height:1.35;font-weight:500}
.sig{margin-top:1.4rem;color:var(--slate);font-size:.9rem}
blockquote{font-family:var(--serif);font-style:italic;font-size:1.6rem;line-height:1.3;border-left:2px solid var(--gold);padding-left:1.2rem;margin-top:2.2rem;color:var(--slate)}
.archery{background:var(--char);color:var(--cream);padding:4.5rem 0;background-image:radial-gradient(circle at 85% 20%,rgba(184,149,90,.14),transparent 45%)}
.archery p{max-width:680px;color:var(--mist)}
.honours{list-style:none;display:grid;gap:1px;grid-template-columns:1fr;margin-top:2.2rem;background:rgba(212,180,124,.25);border:1px solid rgba(212,180,124,.25)}
.honours li{background:var(--char);padding:1.3rem 1.2rem;display:flex;flex-direction:column}
.honours strong{font-family:var(--serif);font-weight:500;font-size:1.4rem;color:var(--gold2)}
.honours span{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
@media(min-width:700px){.honours{grid-template-columns:repeat(3,1fr)}}
.note{font-size:.85rem;color:var(--merle);margin-top:1.4rem}
.center{text-align:center}
.facts{display:grid;gap:1px;background:var(--mist);border:1px solid var(--mist);padding:0!important;margin-block:1rem 4rem}
.facts div{background:var(--cream);padding:1.8rem 1.4rem}
@media(min-width:700px){.facts{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.facts{grid-template-columns:repeat(3,1fr)}}
.dog{display:grid;gap:2rem;align-items:center}
.dog figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
.reg{color:var(--slate);margin-bottom:1.4rem}
dl{display:grid;grid-template-columns:auto 1fr;gap:.7rem 1.4rem;border-top:1px solid var(--mist);padding-top:1.2rem}
dt{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--merle);padding-top:.2rem}
@media(min-width:900px){.dog{grid-template-columns:1fr 1fr;gap:5rem}}
.thumbs,.mosaic{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin-top:2.5rem}
.thumbs img,.mosaic img{width:100%;aspect-ratio:1;object-fit:cover}
@media(min-width:900px){.thumbs{grid-template-columns:repeat(3,1fr)}.mosaic{grid-template-columns:repeat(4,1fr)}}
.mosaic{margin-top:0;padding-top:0!important}
.status{text-align:center;max-width:780px}
.status .btn{margin-top:1.6rem}
.three{margin-top:0}
.ghead{padding-bottom:2rem!important}
.gallery{columns:2;column-gap:.6rem;padding-top:0!important}
.gallery .g{display:block;margin-bottom:.6rem;break-inside:avoid;cursor:zoom-in;overflow:hidden}
.gallery img{width:100%;transition:transform .6s}
.gallery .g:hover img{transform:scale(1.03)}
@media(min-width:900px){.gallery{columns:4}}
dialog#lb{border:0;padding:0;background:rgba(18,17,16,.97);width:100vw;height:100vh;max-width:none;max-height:none}
dialog#lb[open]{display:flex;align-items:center;justify-content:center}
dialog#lb img{max-width:92vw;max-height:88vh;object-fit:contain}
dialog#lb button{position:absolute;background:none;border:0;color:var(--cream);font-size:2.6rem;cursor:pointer;padding:.6rem 1rem;font-family:var(--serif)}
.lb-x{top:.4rem;right:.4rem}.lb-p{left:0;top:50%;transform:translateY(-50%)}.lb-n{right:0;top:50%;transform:translateY(-50%)}
.contact{display:grid;gap:3rem;padding-top:0!important}
.cinfo img{margin-top:2rem;width:100%;aspect-ratio:4/3;object-fit:cover}
.enq{display:grid;gap:1.1rem;background:#fff;padding:1.6rem;border:1px solid var(--mist)}
.enq .note{margin:0}
label{display:grid;gap:.35rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
input,select,textarea{font:300 1rem/1.4 var(--sans);padding:.8rem;border:1px solid var(--mist);background:var(--cream);color:var(--ink);border-radius:0;width:100%;letter-spacing:0;text-transform:none}
input:focus,select:focus,textarea:focus{outline:1px solid var(--gold);border-color:var(--gold)}
@media(min-width:900px){.contact{grid-template-columns:1fr 1.2fr;gap:5rem}}
.foot{background:var(--ink);color:var(--mist);padding:3.5rem 0 2rem;font-size:.9rem}
.foot .brand{color:var(--cream);margin-bottom:.5rem}
.foot nav{display:flex;flex-wrap:wrap;gap:1rem 1.4rem;margin:1.6rem 0}
.small{font-size:.75rem;opacity:.6}
.pg{scroll-margin-top:60px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}
.arch-strip{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:2rem}
.arch-strip img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4}
.arch-strip .a-wide{grid-column:1/-1;aspect-ratio:16/8}
.arch-strip.two img{aspect-ratio:3/2}
@media(min-width:900px){.arch-strip{grid-template-columns:2fr 1fr 1fr}.arch-strip .a-wide{grid-column:auto;aspect-ratio:auto}.arch-strip.two{grid-template-columns:1fr 1fr}}
.dogs .dog{margin-top:3rem}
@media(min-width:900px){.dog.rev figure{order:2}}
.badge{display:inline-block;border:1px solid var(--gold);color:#8a6a33;font:500 .68rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;padding:.6rem .8rem;margin-bottom:1.4rem}
.dogvid{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--char)}
@media(max-width:899px){.thumbs img:nth-child(3):last-child{grid-column:1/-1;aspect-ratio:2/1}}

.mosaic figure.sold{position:relative;margin:0}.mosaic figure.sold img{filter:grayscale(.35) brightness(.85)}.sold-badge{position:absolute;top:12%;left:-6%;right:-6%;text-align:center;transform:rotate(-12deg);background:#8b1d1d;color:#fff;font:600 clamp(1rem,2.4vw,1.6rem)/1 inherit;letter-spacing:.35em;text-transform:uppercase;padding:.6em 0;box-shadow:0 6px 18px rgba(0,0,0,.35)}.mosaic figure.sold figcaption{position:absolute;bottom:.6rem;left:.6rem;background:rgba(28,27,26,.8);color:#fff;padding:.25rem .7rem;font-size:.95rem;letter-spacing:.05em}.mosaic figure.sold{overflow:hidden}
