/* Visual language matches the existing Rex Russell dark-olive, bone-and-gold site */
:root{--ink:#121815;--ink2:#18221e;--ink3:#1f2c26;--bone:#f4eee1;--muted:#c9c8bd;--gold:#deb883;--gold-light:#efd1a6;--olive:#a8af99;--line:rgba(244,238,225,.15);--line-gold:rgba(222,184,131,.36)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--bone);font:16px/1.7 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}a:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}::selection{background:var(--gold);color:var(--ink)}
.wrap{width:min(calc(100% - 72px),1110px);margin-inline:auto}
.skip{position:absolute;top:-70px;left:22px;padding:12px;background:var(--gold);color:var(--ink);z-index:100}.skip:focus{top:8px}
.topbar{background:rgba(18,24,21,.96);border-bottom:1px solid var(--line)}
.topbar .wrap{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand-mark{width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--gold);color:var(--gold);font:normal 25px Georgia,serif;transform:rotate(-5deg)}.brand-text{display:flex;flex-direction:column;line-height:1.1;gap:4px}.brand-name{letter-spacing:.15em;font-weight:bold;font-size:15px}.brand-sub{letter-spacing:.34em;font-weight:bold;font-size:9px;color:var(--olive)}
.nav{display:flex;gap:27px;align-items:center}.nav a{text-decoration:none;font-size:11px;font-weight:bold;letter-spacing:.16em;text-transform:uppercase}.nav a:hover,.nav a[aria-current]{color:var(--gold)}
.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 78% 25%,rgba(135,97,54,.24),transparent 48%),linear-gradient(120deg,#17241d 0%,#121815 68%,#161b17 100%);border-bottom:1px solid var(--line)}
.hero:before{position:absolute;content:"";inset:0;pointer-events:none;opacity:.24;background:linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(222,184,131,.09) calc(25% - 1px),rgba(222,184,131,.09) 25%);background-size:220px 100%;z-index:-1}
.hero .wrap{padding:65px 0 72px}.eyebrow,.section-index,.footer-label{letter-spacing:.19em;font-size:11px;text-transform:uppercase;font-weight:bold;color:var(--gold)}.eyebrow:before{content:"";display:inline-block;width:30px;height:1px;background:var(--gold);margin-right:13px;vertical-align:middle}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:normal;letter-spacing:-.04em}h1{font-size:clamp(42px,6vw,76px);line-height:1.08;max-width:930px;margin:24px 0 19px;overflow-wrap:anywhere}.hero-meta{color:var(--muted);font-size:14px;letter-spacing:.035em;margin:0 0 26px}.backlink{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line-gold);color:var(--gold-light);text-decoration:none;text-transform:uppercase;font-size:11px;font-weight:bold;letter-spacing:.15em;padding:12px 17px}.backlink:hover{background:rgba(222,184,131,.1)}
.page-grid{display:grid;grid-template-columns:minmax(280px,.83fr) minmax(0,1.3fr);align-items:start;gap:clamp(28px,5vw,76px);padding:70px 0 104px}
h2{font-size:clamp(30px,3.1vw,44px);line-height:1.2;margin:0 0 24px}.details{padding:27px 28px 33px;background:var(--ink2);border:1px solid var(--line)}.details h2{font-size:28px;margin:0 0 18px}.details table{border-collapse:collapse;width:100%;table-layout:fixed;overflow-wrap:anywhere}.details th,.details td{border-bottom:1px solid var(--line);text-align:left;padding:11px 5px;vertical-align:top;font-size:14px;line-height:1.55}.details th{color:var(--gold);font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.13em}.details th:first-child,.details td:first-child{width:41%;color:var(--olive)}.details tbody tr:last-child td{border-bottom:none}
.story{min-width:0}.story h2{border-bottom:1px solid var(--line);padding-bottom:18px}.story p{margin:0 0 23px;line-height:1.86;color:#e0ded4;font-size:17px}.story strong{color:var(--gold-light)}.story em{color:var(--bone)}
footer{background:#101714;border-top:1px solid var(--line)}footer .wrap{padding:27px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-name{font-size:13px;font-weight:bold;letter-spacing:.16em;text-transform:uppercase}.footer-caption{color:var(--olive);font-size:12px;margin:6px 0 0}.footer-links{display:flex;gap:22px}.footer-links a{font-size:11px;letter-spacing:.14em;font-weight:bold;text-decoration:none;text-transform:uppercase;color:var(--gold)}.footer-links a:hover{text-decoration:underline}
@media(max-width:770px){.wrap{width:min(calc(100% - 38px),1110px)}.topbar .wrap{min-height:75px}.nav{gap:16px}.nav a{font-size:10px}.hero .wrap{padding:50px 0 54px}.page-grid{grid-template-columns:1fr;padding:42px 0 65px;gap:46px}.details{padding:23px 20px}.story p{font-size:16px}.footer-links{gap:16px}}
@media(max-width:410px){.brand-name{font-size:13px}.brand-mark{width:32px;height:32px;font-size:21px}.nav{gap:12px}.nav a{font-size:9px}.hero-meta{font-size:13px}.details th,.details td{font-size:13px}.details td:first-child{width:42%}footer .wrap{flex-direction:column;align-items:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.photo-album{border-top:1px solid var(--line);padding:0 0 104px}.album-heading{padding:68px 0 29px}.album-heading .eyebrow{margin:0 0 15px}.album-heading h2{margin:0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.photo-card{display:block;overflow:hidden;background:var(--ink2);border:1px solid var(--line);aspect-ratio:1672/941}.photo-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease,opacity .25s ease}.photo-card:hover img{transform:scale(1.025);opacity:.92}@media(max-width:770px){.photo-album{padding-bottom:65px}.album-heading{padding:42px 0 22px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media(max-width:410px){.photo-grid{grid-template-columns:1fr}}
.celtic-country-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.celtic-country-gallery figure{margin:0;overflow:hidden;border:1px solid var(--line);background:var(--ink2);aspect-ratio:16/9}.celtic-country-gallery img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:770px){.celtic-country-gallery{grid-template-columns:1fr;gap:14px}}
