/* Janicki Dressage — formal estate identity */
:root{--ink:#20352e;--paper:#faf8f2;--gold:#9b8152;--line:#d9d2c1;--muted:#626a61}body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;text-wrap:balance}p{color:var(--muted)}header{height:112px;padding:0 5%;border-top:4px solid var(--ink);border-bottom:1px solid var(--line);background:var(--paper);z-index:20}.brand{font-size:27px;letter-spacing:6px}.brand small{font-size:9px;letter-spacing:7px;margin-top:12px}nav{gap:22px;font-size:10px;letter-spacing:1.65px}nav a{padding:12px 0;position:relative}nav a:after{content:'';position:absolute;bottom:5px;left:0;width:0;height:1px;background:var(--gold);transition:width .2s}nav a:hover:after,nav a[aria-current=page]:after{width:100%}nav a[aria-current=page]{color:var(--gold)}.eyebrow{font-size:10px;letter-spacing:2.8px;line-height:1.7;color:var(--gold)}.button{min-height:49px;padding:16px 25px;border:1px solid var(--gold);background:transparent;color:var(--ink);font-size:10px;letter-spacing:1.8px;line-height:1.5;transition:background .2s,color .2s}.button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.text-link{font-size:10px;line-height:1.8;letter-spacing:1.5px;border-color:var(--gold)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.hero{height:82vh;min-height:640px;max-height:950px;padding:7% 8%}.hero h1{font-size:clamp(48px,5.7vw,86px);line-height:1.08;letter-spacing:-1.8px;max-width:950px}.hero .eyebrow{color:#e4d6b9}.hero:after{background:linear-gradient(90deg,rgba(13,28,23,.71),rgba(13,28,23,.05)),linear-gradient(0deg,rgba(13,28,23,.48),transparent 80%)}.hero .button{background:var(--paper);border-color:var(--paper)}.hero-program{border-left:1px solid #d7c7a0;padding-left:20px}.hero-bottom{color:#e4d6b9}.intro{padding:115px 8%;gap:9%}.intro h2{font-size:clamp(36px,3.6vw,56px)}.intro figure{margin-top:35px}.section{padding:95px 7%}.section-head{padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:42px}.section-head h2{font-size:clamp(36px,4vw,56px)}.valdric-feature{background:#eeeae0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.valdric-feature h2{font-size:clamp(58px,6vw,90px)}.sales{background:#eeeee6}.horse-grid{gap:36px}.horse-card{background:var(--paper);border:1px solid #deddd2}.horse-copy{padding:30px}.horse-copy h3{font-size:32px;line-height:1.2;margin:12px 0}.horse-copy .bloodlines{font-family:Georgia,serif;font-size:16px;color:#6f603f}.horse-copy dl{padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.horse-copy strong{display:block;font-family:Georgia,serif;font-size:23px;font-weight:400;margin:20px 0}.horse-actions{display:flex;flex-wrap:wrap;gap:20px;margin-top:24px}.horse-gallery{background:#eeede5}.gallery-thumbs{padding-bottom:8px}.gallery-thumbs button{border-color:transparent}.gallery-thumbs button[aria-pressed=true],.foal-thumbs button[aria-pressed=true]{border-color:var(--gold)}.gallery-hint,.foal-hint,figcaption{font-size:11px;letter-spacing:.25px;color:#77796c}.next-generation{background:#e8ece3}.training{background:#203b31}.training .eyebrow,.training .button{color:#e2d1ae}.training h2{font-size:clamp(36px,3.8vw,58px)}.piaffe-feature{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f1eee5}.news-card{background:transparent;border-top:2px solid var(--gold);padding-top:28px}.news-card h3{font-size:28px;line-height:1.3}.news-card time{font-size:11px;color:var(--muted)}.contact,.foal-contact,.team-cta,.aaron-cta,.v-cta{background:#eae6db;border-top:1px solid var(--line)}.contact-links small{color:#7b6946;letter-spacing:2px}.contact-links a{font-size:clamp(18px,2vw,27px);padding:15px 0;border-color:#cfc6b2}.contact-links{gap:10px}footer{background:#20352e;color:#f4f0e5;border-top:3px solid var(--gold);padding:42px 7%;font-size:11px;letter-spacing:.6px}footer a{color:inherit}.catalogue-intro,.foal-intro,.team-intro,.news-intro,.valdric-intro,.aaron-title{padding-top:80px;padding-bottom:55px}.catalogue-intro h1,.foal-intro h1,.team-intro h1,.news-intro h1,.msj-title,.aaron-title h1{font-size:clamp(48px,6vw,82px);line-height:1.1;letter-spacing:-1.5px}.foal-sales-link{border:1px solid var(--line);border-left:3px solid var(--gold);background:#f0eee5}.foal-jump{display:flex;gap:12px 24px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:25px}.foal-jump a{font-size:11px;letter-spacing:1px}.foal-profile{padding-top:80px;padding-bottom:80px;border-color:var(--line);grid-template-columns:1fr 1.65fr}.foal-profile h2{font-size:48px}.foal-profile .foal-lineage{color:#7b653c;font-family:Georgia,serif;font-size:21px}.foal-profile strong{font-weight:400;font-size:18px;color:var(--ink)}.foal-gallery{padding:12px;border:1px solid var(--line);background:#f1efe7}.foal-gallery .gallery-main{width:100%;height:auto;object-fit:contain}.foal-thumbs{gap:7px}.team-profile,.stallion-profile{border-color:var(--line)}.team-profile h2{font-size:42px}.v-summary,.v-blood,.v-pedigree{border-color:var(--line)}.pedigree-table{border-color:var(--line)}.v-line{color:#7b653c}.v-hero{background:#eeeae0}summary{color:var(--ink)}
@media(min-width:761px) and (max-width:1200px){header{padding:0 3%;height:100px}nav{gap:11px;font-size:9px;letter-spacing:1px}.brand{font-size:23px;letter-spacing:4px}.brand small{letter-spacing:5px}.horse-copy{padding:23px}}
@media(max-width:760px){header{height:89px;padding:0 6%}.brand{font-size:23px;letter-spacing:5px}.brand small{font-size:8px;letter-spacing:6px;margin-top:9px}.menu{font-size:24px;color:var(--ink);padding:10px}nav{top:89px;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 7%;gap:8px}nav a{font-size:11px;letter-spacing:1.7px;padding:11px 0}.hero{height:auto;min-height:640px;padding:80px 7% 65px}.hero h1{font-size:clamp(40px,10vw,58px);letter-spacing:-1px}.hero-bottom{display:none}.intro,.section{padding:60px 7%}.section-head{gap:24px;padding-bottom:24px}.horse-grid{gap:28px}.horse-copy{padding:25px}.horse-copy h3{font-size:31px}.catalogue-intro,.foal-intro,.team-intro,.news-intro,.valdric-intro,.aaron-title{padding-top:48px;padding-bottom:35px}.catalogue-intro h1,.foal-intro h1,.team-intro h1,.news-intro h1,.msj-title,.aaron-title h1{font-size:47px}.foal-profile{grid-template-columns:1fr;padding:48px 7%;gap:25px}.foal-profile h2{font-size:39px}.foal-gallery{padding:8px}.foal-thumbs{grid-template-columns:repeat(3,1fr)}.contact-links a{font-size:20px;overflow-wrap:anywhere}.contact{padding:55px 7%}footer{padding:35px 7%;gap:25px;flex-wrap:wrap}.button{max-width:100%;gap:24px}.news-card h3{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Explicit row spacing prevents percentage gaps overflowing stacked layouts. */
.intro{row-gap:32px;column-gap:9%}.intro>*{min-width:0}.hero-content{min-width:0}.section-head>div{min-width:0}
@media(max-width:760px){.intro{row-gap:30px;column-gap:0;padding:48px 7%}.intro figure{margin-top:24px}.intro .program-lead{margin-top:0}.valdric-feature{padding:45px 7%;gap:28px}.next-generation{padding:48px 7%;gap:28px}.section-head{margin-bottom:30px}.hero{min-height:590px;padding-top:55px;padding-bottom:48px}.hero h1{margin:18px 0 24px}.hero-program{margin-bottom:24px}.hero .button{margin-top:0}.our-farm,.aaron-preview{padding-top:48px;padding-bottom:48px}}
@media(max-width:760px){.hero{padding:0;min-height:0}.hero-content{padding:32px 7% 44px;width:100%}.hero h1{font-size:clamp(36px,9vw,52px);line-height:1.12}.hero .eyebrow{letter-spacing:2px}}
