/* Shared finishing layer. Content and CMS overrides remain independent. */
:root{--accent:#b99b60;--forest:#183b2f;--cream:#f5f0e4}
body{background:var(--paper);-webkit-font-smoothing:antialiased}
header{padding:14px max(5%,calc((100vw - 1340px)/2));border-bottom:1px solid #bba87944;box-shadow:none}
header .brand img{width:166px;height:166px}
header nav{gap:26px}header nav a{font-size:12px;letter-spacing:.035em}header nav .button{border-radius:40px;padding:15px 26px}
nav a[aria-current=page]:after{width:100%}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
.button{border:1px solid transparent;padding:17px 27px;border-radius:2px;box-shadow:none;line-height:1.5}
.button:hover{box-shadow:0 10px 25px #15362918}.button:focus-visible{outline-offset:6px}
.eyebrow{font-size:10px;letter-spacing:.22em}
.hero{min-height:740px;padding-top:65px;padding-bottom:85px;gap:7%}
.hero:after{inset:24px;border-color:#d8c99440}
.hero h1{font-size:clamp(62px,6.5vw,98px);line-height:.99;letter-spacing:-.045em;max-width:650px}
.hero .intro{font-size:18px;line-height:1.8;max-width:440px}.hero .location{letter-spacing:.14em;font-size:10px}
.hero-photo img{height:580px;border-radius:48% 48% 3px 3px;box-shadow:0 24px 75px #071d2b33}
.hero-photo:before{border-color:#d5bd7f77}.photo-note{padding:20px 30px;box-shadow:0 18px 45px #142e2020;bottom:10px;font-size:18px;border-left:2px solid #a48b50}
.home-services{padding:50px 7% 65px;background:#f0eddf}.home-services .services{gap:35px;border:0;counter-reset:services}
.home-services .services article{padding:22px 0!important;border:0;border-top:1px solid #ad997166;counter-increment:services}
.home-services .services article:before{content:'0' counter(services);font:italic 18px Georgia;color:#8f794e}
.home-services .services h3{font:32px/1.1 'Libre Caslon Display',Georgia;margin:22px 0 18px}.home-services>a{display:inline-block;margin-top:35px;font-size:13px}
body:not([data-page=home]) main>.page-opening{padding:75px 7% 85px;min-height:660px;gap:8%;background:radial-gradient(ellipse at 90% 80%,#47624b66,transparent 65%),#193f32}
.page-opening:before{inset:24px;border-color:#d8c99440}.page-opening .intro{line-height:1.85;font-size:17px}
body:not([data-page=home]) .page-opening h1{font-size:clamp(52px,5.6vw,82px);line-height:1.02;letter-spacing:-.04em}
.opening-image{padding:0;border:0}.opening-image img{height:490px;box-shadow:20px 20px 0 #b6a37722,0 24px 55px #071f2422}
body main>.opening-our-story{background:#ede9dc;color:#233f32}.opening-our-story .intro{color:#526252}.opening-our-story .eyebrow{color:#887044}.opening-our-story .button{background:#244737;color:#fff}
.opening-our-story .opening-image img{border:9px solid #faf7ed;transform:rotate(2deg)}
body main>.opening-services{background:#203c32}.opening-services .opening-image{transform:none}.opening-services .opening-image img{border-radius:3px 100px 3px 3px}
body main>.opening-gallery{grid-template-columns:.85fr 1.25fr;background:#e9e6d8;color:#203d30}.opening-gallery .eyebrow{color:#887044}.opening-gallery .intro{color:#526252}.opening-gallery .button{background:#244737;color:#fff}.opening-gallery .opening-image img{height:auto;max-height:490px;border:10px solid #fcfaf2;transform:rotate(-2deg)}
body main>.opening-learn{background:#18392f}.opening-learn .opening-image img{border-radius:46% 46% 0 0;border:8px solid #ddd5b8}
body main>.opening-updates{background:#efe9da;color:#233f32}.opening-updates .intro{color:#526252}.opening-updates .eyebrow{color:#887044}.opening-updates .button{background:#244737;color:white}.opening-updates .opening-image img{object-position:center 35%;border-radius:3px 3px 45% 45%;border:9px solid #faf7ed}
body main>.opening-contact{background:radial-gradient(ellipse at 75% 30%,#64724a55,transparent 60%),#193f32}.opening-contact .opening-image{border:1px solid #c7b78155;padding:55px;border-radius:48% 48% 0 0}.opening-contact .opening-image img{height:331px;box-shadow:20px 20px 0 #b6a37733}
main>.deep-feature{padding:110px 9%;gap:10%;background:#f0ecdf}main>.deep-feature>img{height:510px;border:0;box-shadow:22px 22px 0 #b3a57826}main>.deep-feature h2{line-height:1.08;font-size:clamp(40px,4.5vw,64px)}main>.deep-feature p{font-size:16px}
main>.deep-cards{padding:90px 9%;background:#faf8f0}.deep-card-grid{gap:35px}.deep-card-grid article{background:transparent;border-top:1px solid #aa916277;padding:25px 0 15px}.deep-card-grid article:before{font-size:20px;margin-bottom:30px}.deep-card-grid h3{font-size:34px}.deep-card-grid p{font-size:15px;line-height:1.9}
main>.deep-faq{padding:95px 9%;background:#ebeedd}.deep-faq details{padding:25px 0}.deep-faq summary{font-size:17px;font-weight:500}.deep-faq summary::marker{color:#998052}
main>.deep-next{padding:90px 10%;background:radial-gradient(ellipse at 50% 100%,#546b4355,transparent 70%),#183b2f;border-top:0}.deep-next h2{font-size:clamp(42px,4.8vw,68px);max-width:900px}.deep-next p{font-size:16px;line-height:1.8}.deep-next .button{border-radius:40px}
.section-heading{border-left:0;padding-left:0}.section-heading:before{content:'';display:block;width:55px;height:1px;background:#a28a55;margin-bottom:25px}
.collection-grid{gap:32px;padding-bottom:35px}.media-card{border:0;background:#f0ecdf;box-shadow:none}.media-card:hover{box-shadow:0 15px 35px #233f3214}.card-text{padding:30px 28px 35px}.card-text h3{font-size:36px}.card-text p{line-height:1.8}.card-text span{display:inline-block;font-size:12px;margin-top:12px}.card-open>img{transition:filter .25s}.media-card:hover .card-open>img{filter:saturate(1.08)}
.learning-filters{padding:20px;background:#eeecdf;border:1px solid #bba87944}.learning-filters input,.learning-filters select{background:#fcfaf3;border-color:#c7c5b3;border-radius:0}
.resources{gap:20px 32px;padding:40px;border:1px solid #c3b58b66}.resources h3{font:32px Georgia}.resources a{line-height:1.8}
body[data-page=services] .services{gap:22px}body[data-page=services] .services article{padding:35px 25px!important;border:0;box-shadow:none}body[data-page=services] .services h3{font-size:35px}
.contact{padding:90px 9%!important;gap:8%}.contact form{padding:40px;border-top-width:2px;box-shadow:0 25px 55px #081c2522}.contact label{font-size:12px;font-weight:500}.contact input,.contact textarea,.contact select{padding:13px;border-color:#c4c7b8}.contact button{width:100%;margin-top:15px}
footer{padding:70px 7% 30px;background:#e9e4d6;gap:40px}footer h2{font-size:44px}.footer-links{gap:25px}.footer-bottom{padding-top:25px;letter-spacing:.035em}
.reading-page{max-width:1080px;padding-top:70px}.reading-body{font-size:18px;line-height:1.95}.reading-photo{background:#eeeadc;border:12px solid #f5f0e4}
@media(min-width:1500px){main>.deep-feature,main>.deep-cards,main>.deep-faq{padding-left:max(9%,calc((100vw - 1190px)/2));padding-right:max(9%,calc((100vw - 1190px)/2))}}
@media(max-width:1050px){header nav{gap:15px}header .brand img{width:150px;height:150px}.hero h1{font-size:66px}.hero-photo img{height:500px}.opening-image img{height:430px}main>.deep-feature{gap:55px;padding:75px 7%}}
@media(max-width:700px){header{padding:14px 6% 24px}header .brand img{width:164px;height:164px}header nav{justify-content:center;gap:12px 18px}header nav a{font-size:11px}.hero{padding:55px 8% 70px}.hero h1{font-size:62px}.hero-photo img{height:440px}.hero:after{inset:12px}.hero .intro{font-size:16px}.photo-note{font-size:16px;padding:16px 22px}.home-services .services{gap:12px}.home-services{padding:40px 8%}
body:not([data-page=home]) main>.page-opening{grid-template-columns:1fr;padding:50px 8% 65px;gap:40px;min-height:0}.page-opening:before{inset:12px}body:not([data-page=home]) .page-opening h1{font-size:50px!important}.opening-image img{height:390px;box-shadow:12px 12px 0 #b6a37722}.opening-our-story .opening-image img,.opening-gallery .opening-image img{transform:none}.opening-gallery .opening-image img{height:auto}.opening-contact .opening-image{padding:30px}.opening-contact .opening-image img{height:auto}.page-opening .intro{font-size:16px}
main>.deep-feature{padding:65px 8%;gap:45px}main>.deep-feature>img{height:350px;box-shadow:12px 12px 0 #b3a57826}main>.deep-cards,main>.deep-faq{padding:65px 8%}.deep-card-grid{gap:15px}.deep-card-grid h3{font-size:32px}main>.deep-next{padding:65px 8%}.deep-next h2{font-size:43px}.contact{padding:60px 7%!important}.contact form{padding:25px}.resources{padding:28px}.learning-filters{padding:16px}.card-text{padding:25px}.collection-grid{gap:25px}footer{padding:55px 8% 25px}.footer-bottom{flex-wrap:wrap}footer h2{font-size:36px}}
body:not([data-page=home]) main>.opening-our-story,body:not([data-page=home]) main>.opening-gallery,body:not([data-page=home]) main>.opening-updates{background:#ede9dc;color:#233f32}
body:not([data-page=home]) main>.opening-gallery{grid-template-columns:.85fr 1.25fr}
.page-opening .eyebrow{color:#decc99}
.opening-our-story .eyebrow,.opening-gallery .eyebrow,.opening-updates .eyebrow{color:#796035}
.opening-our-story .opening-image img,.opening-gallery .opening-image img{transform:none}
.opening-updates .opening-image img{border-radius:3px 90px 3px 3px}
.opening-contact .opening-image{max-width:360px;width:100%;justify-self:center;padding:32px;border-radius:46% 46% 3px 3px}
@media(min-width:621px) and (max-width:700px){.hero{grid-template-columns:1fr}.hero-photo{max-width:440px;width:100%;margin:auto}.hero h1{max-width:550px}}
@media(max-width:700px){body:not([data-page=home]) main>.opening-gallery{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.button,.media-card,.card-open>img{transition:none;transform:none}}
/* Bounded sections must use bounded padding, even on ultrawide monitors. */
main>section:not(.hero),body:not([data-page=home]) main>section{padding-left:clamp(24px,6vw,100px);padding-right:clamp(24px,6vw,100px)}
main>.deep-feature{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px)}
main>.deep-feature>div{min-width:0}main>.deep-feature h2{font-size:clamp(38px,3.6vw,56px);line-height:1.12;letter-spacing:-.025em;text-wrap:pretty}
main>.deep-feature p{max-width:58ch;line-height:1.8}main>.deep-feature small{display:block;margin-bottom:20px;letter-spacing:.15em;line-height:1.6}
.deep-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.deep-card-grid h3{font-size:30px;line-height:1.2}
body:not([data-page=home]) .page-opening h1{font-size:clamp(48px,4.5vw,72px);line-height:1.08}
.story-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,75px)}
@media(max-width:900px){main>.deep-feature{grid-template-columns:1fr;gap:40px}main>.deep-feature>img{max-width:620px;width:100%;height:390px;margin:auto}main>.deep-feature>div{max-width:650px}.deep-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){main>section:not(.hero),body:not([data-page=home]) main>section{padding-left:7%;padding-right:7%}.deep-card-grid,.story-intro{grid-template-columns:1fr}main>.deep-feature h2{font-size:38px}.deep-card-grid h3{font-size:29px}main>.deep-feature>img{height:330px}}
/* All navigation pages share the homepage's immersive hero language. */
body:not([data-page=home]) main>.page-opening{max-width:none;min-height:740px;padding:70px max(6%,calc((100vw - 1280px)/2)) 85px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;background:#163d30;color:#f9f5e8;overflow:hidden;isolation:isolate}
body .page-opening:before{inset:0;border:0;background:linear-gradient(90deg,#102e28f5 0%,#153b30ed 42%,#17392bc9 100%),url('assets/garden-after.webp') center/cover;z-index:-2}
body .page-opening:after{content:'';position:absolute;inset:24px;border:1px solid #c8b88155;pointer-events:none;z-index:-1}
body:not([data-page=home]) .page-opening h1{font-size:clamp(58px,5.7vw,84px);line-height:1.03;letter-spacing:-.035em;max-width:660px;margin:26px 0 28px;text-wrap:balance}
body .page-opening .eyebrow{display:flex;gap:16px;align-items:center;color:#decc99;font-size:10px;line-height:1.6;letter-spacing:.18em}
body .page-opening .eyebrow:before{content:'';width:34px;height:1px;flex-shrink:0;background:#c8b47a}
body .page-opening .intro{color:#dce4d7;max-width:480px;font-size:18px;line-height:1.85;margin-bottom:24px}
body .page-opening .button{background:#dfcb92;color:#1d392c;border-radius:2px;padding:18px 27px}body .page-opening .button:hover{background:#efdfa8}
body .page-opening .opening-image{position:relative;width:100%;max-width:none;padding:0 18px 26px 22px;border:0;border-radius:0;background:none;transform:none;margin:0;isolation:isolate}
body .page-opening .opening-image:after{content:'';position:absolute;inset:20px 0 4px 44px;border:1px solid #c6ae7288;z-index:-1}
body .page-opening .opening-image img{display:block;width:100%;max-width:none;height:560px;max-height:none;object-fit:cover;border:7px solid #f2ecda;border-radius:46% 46% 3px 3px;transform:none;box-shadow:0 25px 65px #061c2950;margin:0}
body .opening-our-story .opening-image img{object-position:55% center}body .opening-services .opening-image img{object-position:45% center}body .opening-learn .opening-image img{object-position:center 35%}body .opening-updates .opening-image img{object-position:center 45%}
body .opening-gallery .opening-image img{height:440px;object-fit:cover;border-radius:4px}
.opening-note{position:absolute;bottom:0;left:-14px;max-width:90%;padding:20px 26px;background:#f2ecda;color:#264536;border-left:3px solid #b79b56;box-shadow:0 14px 25px #001f2330;font:italic 18px/1.4 Georgia;letter-spacing:0;text-transform:none}
body .opening-contact .opening-image{height:560px;background:linear-gradient(#163d3010,#163d3040),url('assets/garden-after.webp') center/cover;border:7px solid #f2ecda;border-radius:46% 46% 3px 3px;padding:0 28px 45px;display:flex;align-items:flex-end;justify-content:flex-end}
body .opening-contact .opening-image img{width:230px;height:305px;border:6px solid #f2ecda;border-radius:44% 44% 3px 3px;object-fit:cover;box-shadow:0 16px 35px #102e2866}body .opening-contact .opening-note{bottom:-22px;left:-24px}
@media(max-width:1050px){body:not([data-page=home]) main>.page-opening{gap:5%;padding-left:6%;padding-right:6%;min-height:640px}body:not([data-page=home]) .page-opening h1{font-size:60px!important}body .page-opening .opening-image img{height:470px}body .opening-gallery .opening-image img{height:360px}body .opening-contact .opening-image{height:470px}body .opening-contact .opening-image img{width:210px;height:278px}.opening-note{font-size:16px;padding:17px 20px}}
@media(max-width:800px){body:not([data-page=home]) main>.page-opening{grid-template-columns:1fr;padding:50px 8% 70px;gap:45px;min-height:0}body:not([data-page=home]) .page-opening h1{font-size:clamp(46px,8vw,64px)!important;max-width:650px}body .page-opening .intro{font-size:16px;max-width:580px}body .page-opening .opening-image{max-width:540px;justify-self:center}body .page-opening .opening-image img{height:460px}body .opening-gallery .opening-image img{height:auto;aspect-ratio:1.5;object-fit:cover}body .page-opening:after{inset:12px}body .opening-contact .opening-image{height:460px}body .opening-contact .opening-image img{width:210px;height:278px}.opening-note{left:0;max-width:94%}}
@media(max-width:420px){body .page-opening .opening-image{padding-left:10px;padding-right:10px}body .page-opening .opening-image img{height:390px}body .opening-gallery .opening-image img{height:auto}body .opening-contact .opening-image{height:390px;padding:0 20px 30px}body .opening-contact .opening-image img{width:180px;height:238px}.opening-note{font-size:15px;padding:15px 18px}}
/* A calm, spacious inquiry card, with a clear reading and tab order. */
#page-content{position:absolute;width:1px;height:1px;pointer-events:none}
body main>.contact{position:relative;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(35px,5vw,75px);background:#eeeade;color:#244737;padding:90px clamp(24px,6vw,100px)!important}
.contact>div{padding-top:44px}.contact>div>.eyebrow{color:#756033}.contact>div h2{font-size:clamp(42px,3.6vw,56px);line-height:1.12;margin-bottom:28px}.contact>div>p{line-height:1.85;max-width:390px}.contact .hours{color:#5c6957;padding-top:25px;border-top:1px solid #c4bea7;margin-top:35px;font-size:14px}.contact>div>a{font-size:15px;margin:15px 0;text-decoration-color:#b09a67}
.contact #signup-form{padding:42px;background:#fcfaf3;border:1px solid #d4ccb5;border-radius:12px;box-shadow:0 24px 65px #243d3210;position:relative;overflow:hidden}
.contact #signup-form:before{content:'';position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#244737 0%,#244737 55%,#c4ab70 55%,#e5d8af 100%)}
.inquiry-heading{padding-bottom:25px;border-bottom:1px solid #ded7c4;margin-bottom:30px}.inquiry-heading>p{font-size:10px;font-weight:700;letter-spacing:.2em;color:#756033;margin-bottom:14px}.inquiry-heading h3{font:40px/1.12 'Libre Caslon Display',Georgia;letter-spacing:-.02em;margin:0;color:#244737}
.inquiry-group{border:0;padding:0;margin:0 0 30px;min-width:0}.inquiry-group legend{font-size:12px;letter-spacing:.06em;font-weight:700;color:#294b39;padding:0;margin-bottom:18px}.inquiry-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:19px 18px}.inquiry-field{min-width:0}.inquiry-field.full-width{grid-column:1/-1}
.contact .inquiry-field label{font-size:12px;font-weight:500;color:#52614f;line-height:1.5;margin:0 0 8px;min-height:18px}
.contact .inquiry-field input,.contact .inquiry-field select,.contact .inquiry-field textarea{width:100%;min-width:0;padding:13px 14px;border:1px solid #cbd0c0;background:#fffef9;border-radius:6px;color:#233f32;font-size:15px;line-height:1.5;box-shadow:inset 0 1px 2px #253b3203;transition:border-color .15s,box-shadow .15s;min-height:49px}
.contact .inquiry-field textarea{min-height:145px}.contact .inquiry-field input:focus,.contact .inquiry-field select:focus,.contact .inquiry-field textarea:focus{outline:0;border-color:#677d57;box-shadow:0 0 0 3px #9bab7a30}
.contact .consent{padding:18px;background:#f0f1e7;border-radius:6px;border:1px solid #e0e2d2;gap:12px;margin:4px 0 22px;font-size:12px;line-height:1.7;font-weight:400;color:#52614f}.contact .consent input{appearance:auto;accent-color:#244737;flex:0 0 17px;width:17px;height:17px;margin:2px 0 0;padding:0}
.contact #signup-form>button{min-height:54px;border-radius:6px;background:#244737;color:#fff9ea;border:1px solid #244737;font-size:14px;letter-spacing:.025em;margin:0;box-shadow:0 5px 12px #24473712}.contact #signup-form>button:hover{background:#365b45;transform:translateY(-1px)}.contact #signup-form>button:disabled{cursor:wait;opacity:.7;transform:none}
.contact #form-status:empty{display:none}.contact #form-status:not(:empty){padding:15px;margin:20px 0 0;border-left:3px solid #b69a59;background:#f2ecdb;font-size:14px}.contact #signup-form>.fine{font-size:11px;line-height:1.7;text-align:center;max-width:420px;margin:17px auto 0;color:#697460}
@media(max-width:1000px){body main>.contact{grid-template-columns:1fr;gap:30px}.contact>div{padding-top:0}.contact>div>p{max-width:650px}.contact>div h2{max-width:650px}.contact .hours{margin-top:20px;padding-top:20px}.contact #signup-form{max-width:760px;width:100%;justify-self:center}.contact>div>a{display:inline-block;margin-right:24px}}
@media(max-width:540px){body main>.contact{padding:55px 6%!important}.contact #signup-form{padding:28px 22px;border-radius:9px}.inquiry-fields{grid-template-columns:1fr;gap:17px}.inquiry-field.full-width{grid-column:auto}.inquiry-heading h3{font-size:34px}.inquiry-heading{margin-bottom:25px}.contact .inquiry-field input,.contact .inquiry-field select,.contact .inquiry-field textarea{font-size:16px}.contact .consent{padding:15px}.contact>div h2{font-size:42px}}
/* Purpose-specific collections */
.card-open{display:block;text-decoration:none}.card-visual{position:relative;overflow:hidden;background:#dce2d1}.card-visual img{display:block;width:100%;height:300px;object-fit:cover;transition:transform .3s}.card-open:hover .card-visual img{transform:scale(1.025)}.media-badge{position:absolute;bottom:16px;left:16px;padding:8px 12px;background:#f9f5e9;color:#244737;font-size:10px;letter-spacing:.09em}.video-card .media-badge{background:#244737;color:white}.collection-tools{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0 32px}.collection-tab{padding:12px 22px;border-radius:30px;border:1px solid #b8c1aa;background:transparent;color:#244737}.collection-tab[aria-pressed=true]{background:#244737;color:#fff9e9;border-color:#244737}
body[data-page=gallery] .collection-grid{max-height:none;overflow:visible;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}body[data-page=gallery] .media-card{border-radius:8px;box-shadow:0 12px 25px #233f320b;background:#fffdf6}body[data-page=gallery] .card-text h3{font-size:29px}body[data-page=gallery] .video-card .card-visual img{object-fit:contain;background:#142f26}body[data-page=gallery] .card-text{padding:24px}.learning-start{display:block;background:linear-gradient(115deg,#1d4134,#3c5a40);color:#fbf4df;padding:40px 45px;margin:30px 0;text-decoration:none;border-left:5px solid #c5ac72}.learning-start small{font-size:10px;letter-spacing:.15em;color:#d8c393}.learning-start h2{font-size:43px;max-width:650px}.learning-start p{max-width:650px;color:#d9e1d1}.learning-start span{font-size:13px;border-bottom:1px solid #bca06a;padding-bottom:5px}body[data-page=learn] .collection-tools{display:grid;grid-template-columns:1.4fr 1fr auto;padding:20px;background:#e8eadb}.article-meta{font-size:11px!important;color:#738066;letter-spacing:.02em}body[data-page=learn] .media-card{background:#fffdf7;border:1px solid #d9ddce;border-radius:6px;box-shadow:0 8px 25px #233f3208}body[data-page=learn] .card-visual img{height:230px}body[data-page=learn] .card-text h3{font-size:32px}.journal-intro{display:flex;gap:24px;align-items:center;border-top:1px solid #c3b692;border-bottom:1px solid #c3b692;padding:25px 0;margin:25px 0 40px}.journal-intro img{width:65px;height:80px;object-fit:cover;border-radius:35px 35px 3px 3px}.journal-intro p{font:italic 22px/1.5 Georgia;max-width:650px;margin:0}body[data-page=updates] .media-card{background:#f4efdf;border:1px solid #d5c7a3}body[data-page=updates] .card-open{display:grid;grid-template-columns:1.1fr 1fr}body[data-page=updates] .card-visual img{height:100%;min-height:430px}body[data-page=updates] .card-text{padding:45px}body[data-page=updates] .card-text h3{font-size:48px}body[data-page=updates] .collection-grid{overflow:visible;max-height:none}
@media(max-width:900px){body[data-page=gallery] .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-page=updates] .card-open{display:block}body[data-page=updates] .card-visual img{min-height:0;height:350px}}
@media(max-width:620px){body[data-page=gallery] .collection-grid{grid-template-columns:1fr}body[data-page=learn] .collection-tools{grid-template-columns:1fr}.learning-start{padding:28px}.learning-start h2{font-size:35px}.journal-intro p{font-size:18px}body[data-page=updates] .card-text{padding:28px}body[data-page=updates] .card-text h3{font-size:37px}.collection-tab{padding:10px 15px;font-size:12px}}
.contact-portrait{width:92px;height:116px;object-fit:cover;border-radius:45px 45px 4px 4px;border:4px solid #fffaf0;box-shadow:8px 8px 0 #d8ceb1;margin-bottom:28px}.contact .photo-upload{border:1px dashed #a4b096;border-radius:8px;background:#f0f2e7;padding:20px}.photo-upload p{font-size:11px;line-height:1.6;margin:12px 0 0;color:#63705c}#photo-previews{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}#photo-previews img{width:80px;height:80px;object-fit:cover;border-radius:5px}.contact input[type=file]{font-size:12px;padding:10px}.contact input[type=file]::file-selector-button{border:0;background:#244737;color:white;padding:10px;border-radius:4px;margin-right:10px}
.contact #form-status.form-success{background:#e8efde;border-color:#416641;color:#244737}.contact #form-status.form-error{background:#f5eadb;border-color:#a8753e;color:#563f28}body[data-page=policies] main{max-width:1100px;margin:auto;padding:35px 0}body[data-page=policies] .custom-section{padding-top:30px;padding-bottom:30px}body[data-page=policies] .custom-section h2{font-size:36px}body[data-page=policies] .custom-section:first-child{border-bottom:2px solid #bca06a;background:#efe9d8}body[data-page=policies] .custom-section p{margin-left:0;max-width:76ch;line-height:1.85}
body[data-page=contact] .deep-cards>h2{margin-bottom:38px;font-size:clamp(38px,4vw,54px)}
body[data-page=contact] .deep-card-grid{gap:24px;align-items:stretch}
body[data-page=contact] .deep-card-grid article{padding:32px 30px 36px;background:#f0f1e7;color:#244737;border:1px solid #d8dccb;border-top:3px solid #bba269;border-radius:8px;box-shadow:0 8px 24px #233f3206}
body[data-page=contact] .deep-card-grid article:before{display:grid;place-items:center;width:40px;height:40px;background:#244737;color:#e6d5a2;border-radius:50%;font:italic 18px Georgia;margin-bottom:24px}
body[data-page=contact] .deep-card-grid article h3{margin:0 0 18px;font-size:30px;line-height:1.2}
body[data-page=contact] .deep-card-grid article p{color:#52634f;font-size:15px;line-height:1.85;margin:0}
@media(max-width:1000px){body[data-page=contact] .deep-card-grid{grid-template-columns:1fr}body[data-page=contact] .deep-card-grid article{padding:28px 30px}body[data-page=contact] .deep-card-grid article p{max-width:70ch}}

[data-section-style] p,[data-section-style] .intro,[data-section-style] .eyebrow,[data-section-style] h1,[data-section-style] h2,[data-section-style] h3{color:inherit}

/* Accessible gold accents on light surfaces; dark sections retain their light gold. */
.home-services .eyebrow,.section-heading .eyebrow,main>.deep-feature small,.card-text small,.contact .eyebrow,.contact .form-kicker{color:#756033}
body[data-page=learn] .deep-feature small{color:#dac68d}
.article-meta{color:#59674d}
.deep-card-grid article:before{color:#756033}
.learning-start{background-color:#1d4134}

footer p,footer .footer-bottom{color:#52634f}
