@font-face{font-family:'Berkshire Swash';src:url('./assets/BerkshireSwash-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Caveat';src:url('./assets/Caveat-wght.ttf') format('truetype');font-style:normal;font-weight:400 700;font-display:swap}
:root{color-scheme:light;--ink:#1e2723;--pine:#23362e;--cream:#f4eee2;--paper:#faf6ee;--copper:#b37346;--line:#d3c7b5}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 12% 8%,#fffaf0,transparent 44%),repeating-linear-gradient(135deg,#55392008 0 1px,transparent 1px 6px),var(--cream);color:var(--ink);font:16px/1.55 Georgia,serif}
button,a{touch-action:manipulation}
a{color:inherit}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bf792c;outline-offset:4px}
.skip-link{position:absolute;left:12px;top:-60px;z-index:20;padding:10px;background:#fff}.skip-link:focus{top:12px}
.site-header{width:min(1440px,100%);margin:auto;min-height:80px;padding:16px clamp(24px,5vw,84px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #c7bba9;background:linear-gradient(110deg,#faf5e9,#eae0cf)}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font:700 15px/1.1 Georgia,serif;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;font:italic 18px/1 Georgia,serif;letter-spacing:-.09em}
.header-note{color:#7d6d58;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.brand:hover,.sunset-link:hover{text-decoration:underline;text-underline-offset:4px}
.hero{width:min(1440px,100%);min-height:500px;margin:auto;padding:clamp(28px,3vw,44px) clamp(24px,5vw,84px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:stretch;gap:clamp(20px,3vw,44px);background:radial-gradient(circle at 79% 13%,#f4eadb 0,transparent 44%),radial-gradient(circle at 15% 85%,#d8c8b2 0,transparent 48%),repeating-linear-gradient(135deg,#694b2c0a 0 1px,transparent 1px 7px),#e8ddcd;box-shadow:inset 0 -14px 25px #58422510}
.hero-copy,.hero-art{min-height:465px;border-radius:3px;background:linear-gradient(145deg,#fffaf0 0%,#f6efe4 54%,#eee4d5 100%);box-shadow:inset 0 1px 2px #ffffffd9,inset 0 -2px 3px #98866c30,0 2px 4px #493b2926}
.hero-copy{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(28px,3.6vw,52px);text-align:center}
.hero-copy::before{content:"";position:absolute;z-index:0;left:10%;right:10%;top:15%;height:65%;border-radius:50%;background:radial-gradient(ellipse at center,#392b2547 0%,#5a463326 42%,transparent 73%);filter:blur(22px);pointer-events:none}
.hero-copy>*{position:relative;z-index:1}
.eyebrow{margin:0 0 20px;color:#8c5639;font:700 11px/1.4 Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase}
.hero-copy .eyebrow{margin-bottom:12px}
.hero h1{width:100%;margin:0;max-width:740px;color:#4b252e;font:400 clamp(74px,7vw,104px)/1 'Berkshire Swash',Georgia,serif;letter-spacing:-.02em;text-align:center}
.hero h1 span{display:block;width:max-content;max-width:100%;margin-inline:auto;transform:scaleX(1.07);filter:drop-shadow(1px 1px 0 #b18c79) drop-shadow(3px 5px 4px #2d202985) drop-shadow(8px 11px 12px #201a1b70);--name-gradient:linear-gradient(160deg,#76414b 0%,#4d2833 54%,#251d26 100%)}
.hero h1 span:last-child{color:#363a3d;--name-gradient:linear-gradient(160deg,#666a6b 0%,#3d4245 54%,#222629 100%)}
@supports ((background-clip:text) or (-webkit-background-clip:text)){.hero h1 span{background:var(--name-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}}
.carolina-flourish{display:block;height:auto;opacity:.72;pointer-events:none}
.hero-flourish{width:min(320px,86%);margin:18px auto 0;transform:scaleX(1.08);filter:drop-shadow(2px 3px 2px #392a245c) drop-shadow(6px 9px 8px #241e1c55)}
.hero-intro{max-width:550px;margin:20px auto 0;color:#39463d;font:500 clamp(30px,2.7vw,40px)/1.07 'Caveat',Georgia,serif}
.hero-art{position:relative;width:100%;margin:0 auto}
.hero-art::before{content:"";position:absolute;inset:8% 3% 20%;border-radius:50%;background:#9b71574a;filter:blur(32px)}
.memory-card{position:absolute;display:block;width:34%;aspect-ratio:4/5;padding:8px 8px 24px;border:1px solid #d0bda5;background:#f9f3e8;box-shadow:0 18px 28px #39281f4d,0 2px 5px #39281f3d;transition:transform .46s cubic-bezier(.2,.75,.2,1),box-shadow .46s ease}
.memory-card img{display:block;width:100%;height:100%;object-fit:contain;background:#e9ddce}
.memory-card-horse{left:6%;top:20%;z-index:1;transform:rotate(-11deg)}
.memory-card-christmas{left:33%;top:15%;z-index:2;transform:rotate(-1deg)}
.memory-card-guitar{right:6%;top:21%;z-index:3;transform:rotate(11deg)}
.memory-card.is-front{z-index:4;box-shadow:0 28px 40px #39281f6a,0 3px 8px #39281f3d}
.memory-card-horse.is-front{transform:translateY(-13px) rotate(-4deg) scale(1.035)}
.memory-card-christmas.is-front{transform:translateY(-13px) rotate(0deg) scale(1.035)}
.memory-card-guitar.is-front{transform:translateY(-13px) rotate(4deg) scale(1.035)}
.photo-art{position:relative;overflow:hidden;isolation:isolate;background:#ac7950}
.photo-art img{position:absolute;left:50%;top:50%;width:145%;height:145%;object-fit:cover;object-position:center;transform:translate(-50%,-50%) rotate(-90deg)}
.hero-art figcaption{position:absolute;inset:0;z-index:5;pointer-events:none;text-align:center}
.hero-art figcaption strong{position:absolute;top:3%;left:5%;right:5%;display:block;color:var(--ink);font:600 clamp(28px,2.6vw,38px)/1 'Caveat',Georgia,serif}
.hero-art figcaption span{position:absolute;left:0;right:0;bottom:6%;display:block;color:#746151;font:10px/1.2 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.panel-switcher{position:sticky;top:0;z-index:30;width:min(1440px,100%);margin:auto;padding:12px clamp(24px,5vw,84px);background:linear-gradient(180deg,#142e2a,#0d211f);border-block:1px solid #49645a;box-shadow:0 10px 28px #13201b50}
.tab-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;width:min(930px,100%);margin:auto;padding:6px;background:#0c211f;border:1px solid #47645c;border-radius:20px;box-shadow:inset 0 2px 8px #0005}
.panel-tab{min-width:0;min-height:52px;padding:10px 14px;border:1px solid transparent;border-radius:14px;background:transparent;color:#cbcfbf;cursor:pointer;font:700 11px/1.25 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.panel-tab:hover{background:#1b3732;color:#f4e5c7}
.panel-tab[aria-selected="true"]{background:linear-gradient(180deg,#2b4941,#1d3934);border-color:#b48651;color:#f6d9aa;box-shadow:0 2px 8px #0006,inset 0 1px #ffffff1f}
.panel-tab:focus-visible{outline:3px solid #f0bd76;outline-offset:2px}
.tab-panel{scroll-margin-top:90px}
.tab-panel[hidden]{display:none!important}
.section-shell{width:min(1440px,100%);margin:auto;padding:clamp(68px,7vw,106px) clamp(24px,5vw,84px)}
.radio-section{display:grid;grid-template-columns:minmax(0,.75fr) minmax(340px,1fr);gap:clamp(38px,8vw,120px);align-items:center;background:#263b31;color:#f8f2e5}
.radio-section .eyebrow{color:#e8b68a}
.section-intro h2,.section-heading h2,.archive-copy h2{margin:0;font:400 clamp(48px,5.2vw,82px)/1.02 Georgia,serif;letter-spacing:-.065em}
.section-intro p:last-child{max-width:480px;margin:24px 0 0;color:#f0e5d3;font:500 clamp(29px,2.6vw,37px)/1.1 'Caveat',Georgia,serif}
.radio-wrap{width:min(540px,100%);margin:auto}
.radio-wrap .music-dialog{display:block;width:100%;max-height:none;margin:0;color:#202820;text-align:left;box-shadow:0 22px 70px #09170d7a}
.radio-wrap .music-body{padding:clamp(12px,2vw,24px)}
.radio-wrap .radio-stations{display:block;margin-bottom:14px}
.radio-wrap .radio-station{width:100%;min-height:90px;padding:13px;background:linear-gradient(135deg,#252d22,#141c18)}
.radio-wrap .radio-station:disabled{opacity:.8}
.radio-wrap .radio-glass{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:15px 16px 13px}
.radio-wrap .radio-dial{grid-column:1/-1}
.radio-wrap .music-title{grid-column:1;margin:12px 0 0;font-size:clamp(20px,2vw,26px);line-height:1.15}
.radio-wrap .music-artist{grid-column:1;margin:0}
.radio-wrap .radio-readout{grid-column:2;grid-row:2/4;align-self:end;display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.radio-wrap .radio-source{grid-column:1/-1;margin:2px 0 0;color:#4c7770;text-align:center;font:700 10px/1.3 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.radio-wrap .music-transport{gap:8px}
.radio-wrap .music-transport button{min-height:44px}
.radio-wrap .music-transport .radio-power{min-width:96px}
.radio-wrap .radio-library{margin-top:10px}
.sunset-link{display:block;width:max-content;max-width:100%;margin:22px auto 0;color:#f6dfbd;text-align:center;text-decoration:none;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.records-section{min-height:620px;padding-top:34px;background:radial-gradient(circle at 78% 14%,#fffef9,transparent 44%),radial-gradient(circle at 9% 84%,#e5dac8,transparent 48%),repeating-linear-gradient(135deg,#5e45280a 0 1px,transparent 1px 7px),var(--paper);box-shadow:inset 0 12px 30px #52412c12}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:40px}
.section-heading h2{max-width:750px}
.section-heading>p{max-width:380px;margin:0 0 5px;color:#405346;font:500 34px/1.08 'Caveat',Georgia,serif}
.record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:clamp(22px,4vw,60px)}
.record-card{min-width:0;display:flex;flex-direction:column;padding:14px;background:#f0e7d8;border:1px solid #dacdbb;box-shadow:0 11px 28px #66503918}
.record-image{aspect-ratio:1.25/1}
.record-image img{width:120%;height:165%}
.record-type-art{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;overflow:hidden;padding:clamp(22px,3vw,38px);background:radial-gradient(circle at 72% 40%,#775044,#382f2a 48%,#202b28);color:#f3dfc5}
.record-type-art::before{content:"";position:absolute;z-index:0;width:86%;aspect-ratio:1;right:-18%;top:-27%;border-radius:50%;background:repeating-radial-gradient(circle,#161c1b 0 2px,#3b403d 3px 4px,#171d1b 5px 7px);box-shadow:0 14px 25px #0008}
.record-type-art span,.record-type-art strong,.record-type-art small{position:relative;z-index:1}
.record-type-art span,.record-type-art small{font:700 10px/1.2 Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase}
.record-type-art strong{font:400 italic clamp(56px,7vw,94px)/1 Georgia,serif;letter-spacing:-.06em;text-shadow:0 3px 14px #0008}
.record-type-art small{align-self:flex-end}
.record-copy{display:grid;grid-template-columns:auto 1fr;gap:3px 20px;align-items:baseline;padding:22px 8px 8px}
.record-copy span{grid-row:1/3;color:#8d6048;font:700 10px/1.2 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.record-copy h3{margin:0;font:italic 32px/1.1 Georgia,serif;letter-spacing:-.04em}
.record-copy p{margin:5px 0 0;color:#5c665d;font-size:15px}
.record-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding:18px 8px 6px;border-top:1px solid #d8c9b4}
.record-links a{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border:1px solid #a69076;border-radius:4px;color:#344b3f;text-decoration:none;font:700 10px/1.2 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.record-links a:hover{background:#e4d7c2}
.archive-section{position:relative;isolation:isolate;overflow:hidden;min-height:650px;background:#e7dccb;box-shadow:inset 0 12px 30px #52412c14}
.archive-section::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#e7dccbee 0%,#e7dccb99 40%,transparent 73%),linear-gradient(35deg,#e7dccb99 0%,#e7dccb33 55%,transparent 100%)}
.story-slideshow{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.story-slide{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:var(--image-position,center);opacity:0;filter:sepia(.12) saturate(.82);transform:rotate(var(--image-rotation,0deg)) scale(1.025);transition:opacity 1900ms ease-in-out}
.story-slide.is-visible{opacity:.9}
.archive-main{position:relative;z-index:2;min-height:clamp(530px,53vw,710px)}
.archive-copy{max-width:540px}
.archive-copy h2{font:500 clamp(63px,6.2vw,94px)/.94 'Caveat',Georgia,serif;letter-spacing:-.025em}
.story-video{position:relative;width:100%;aspect-ratio:16/9;margin-top:clamp(26px,3vw,40px);background:#17221f;box-shadow:0 15px 35px #2b211f66}
.story-video iframe,.story-video-link{position:absolute;inset:0;width:100%;height:100%;border:1px solid #796a5b}
.story-video iframe{display:none}
.story-video.is-embedded iframe{display:block}
.story-video.is-embedded .story-video-link{display:none}
.story-video-link{display:flex;align-items:center;justify-content:center;overflow:hidden;color:#fffaf0;text-decoration:none}
.story-video-link img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75}
.story-video-link::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0c161000 30%,#0c1610d9 100%)}
.story-play,.story-video-label{position:relative;z-index:1;text-shadow:0 2px 6px #000c}
.story-play{display:grid;place-items:center;width:66px;height:46px;border-radius:12px;background:#a52c30;color:#fff;font:24px/1 Arial,sans-serif;box-shadow:0 3px 12px #0009}
.story-video-label{position:absolute;left:18px;right:18px;bottom:15px;text-align:center;font:700 12px/1.2 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.site-footer{width:min(1440px,100%);margin:auto;min-height:100px;padding:25px clamp(24px,5vw,84px);display:flex;align-items:center;justify-content:space-between;gap:15px;background:#202a24;color:#e7dfd1;font:700 11px/1.2 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.site-footer .footer-name{color:#e5c4a6;font:400 22px/1.2 'Berkshire Swash',Georgia,serif;letter-spacing:-.025em;text-shadow:1px 2px 4px #100d0b}
.site-footer a{text-decoration:none}
@media(max-width:900px){.hero{grid-template-columns:1fr .8fr;gap:22px;min-height:0}.hero-copy,.hero-art{min-height:390px}.hero h1{font-size:clamp(65px,8vw,84px)}.radio-section{gap:40px}.section-intro h2{font-size:52px}}
@media(max-width:700px){.site-header{min-height:70px}.header-note{font-size:9px;letter-spacing:.1em}.brand{font-size:12px}.brand-mark{width:36px;height:36px;font-size:15px}.hero{grid-template-columns:1fr;min-height:0;padding-top:26px;padding-bottom:30px}.hero-copy{min-height:0;padding:clamp(28px,6vw,40px)}.hero h1{font-size:clamp(54px,15vw,88px)}.hero-art{width:100%;max-width:430px;min-height:330px;margin-top:0}.memory-card{width:38%}.memory-card-horse{left:4%;top:18%}.memory-card-christmas{left:31%;top:13%}.memory-card-guitar{right:4%;top:19%}.radio-section{grid-template-columns:1fr}.section-intro p:last-child{margin-top:15px}.section-heading{display:block}.section-heading>p{margin-top:20px}.archive-section::before{background:linear-gradient(180deg,#e7dccbf0 0%,#e7dccbcb 55%,#e7dccb66 100%)}.archive-main{min-height:500px}.record-copy{display:block}.record-copy h3{margin-top:8px}}
@media(max-width:520px){.site-header{padding-inline:18px}.header-note{display:none}.hero,.section-shell{padding-inline:22px}.hero-intro{font-size:21px}.panel-switcher{padding:8px 9px}.tab-track{gap:3px;padding:4px;border-radius:15px}.panel-tab{min-height:55px;padding:6px 4px;border-radius:11px;font-size:9px;letter-spacing:.035em}.record-grid{grid-template-columns:1fr}.record-image{aspect-ratio:1.3/1}.section-intro h2,.section-heading h2,.archive-copy h2{font-size:clamp(45px,11vw,60px)}.site-footer{flex-wrap:wrap}.site-footer span:nth-child(2){display:none}}
@media(max-width:700px){.records-section{padding-top:26px}.hero-art figcaption strong{top:2.5%;font-size:clamp(25px,7vw,33px)}.memory-card-horse{top:22%}.memory-card-christmas{top:19%}.memory-card-guitar{top:23%}.section-heading>p{font-size:30px}}
@media(max-width:520px){.hero-intro{font-size:clamp(28px,7.5vw,33px)}.archive-copy h2{font-size:clamp(60px,14vw,76px)}.hero-art figcaption strong{font-size:clamp(24px,6.8vw,30px)}.section-heading>p{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.memory-card,.story-slide{transition:none}}
