
:root { --wine:#4b2030; --wine-2:#652b40; --wine-3:#875163; --dust:#a97681; --mauve:#b49196; --ivory:#fcf9f4; --cream:#f6f0e8; --oat:#eee5da; --sand:#e8d8c5; --tan:#d5b89f; --beige:#e1cab5; --ink:#362c2b; --text:#605554; --line:rgba(87,49,58,.18); --serif:'Playfair Display',Georgia,serif; --sans:'DM Sans',Arial,sans-serif; }
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font:400 15px/1.85 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--wine-3);outline-offset:4px}img{max-width:100%;display:block}::selection{background:var(--wine-3);color:white}.container{max-width:1330px;width:calc(100% - 112px);margin:auto}.skip-link{position:absolute;top:-100px;left:18px;background:#fff;padding:10px;z-index:100}.skip-link:focus{top:10px}
.announcement{background:var(--wine);color:#f6ebe4;min-height:35px;display:flex;gap:18px;justify-content:center;align-items:center;text-transform:uppercase;font:600 9px/1.5 var(--sans);letter-spacing:.19em;text-align:center;padding:5px 15px}.announcement-star{font:10px Georgia,serif;color:#c9ab9a}.site-header{height:88px;position:sticky;top:0;background:rgba(252,249,244,.965);border-bottom:1px solid rgba(84,49,60,.1);z-index:30;backdrop-filter:blur(12px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:var(--wine);display:flex;align-items:center;gap:10px;flex-shrink:0}.brand span{display:flex;flex-direction:column;align-items:center}.brand strong{font:500 25px/1 var(--serif);letter-spacing:.13em}.brand small{font:700 8px/1.7 var(--sans);letter-spacing:.51em;margin-left:.5em;margin-top:5px}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:22px}.desktop-nav a,.mobile-nav a{font-size:11px;font-weight:600;color:#6a535a;transition:color .18s;white-space:nowrap;letter-spacing:.012em}.desktop-nav a:hover,.desktop-nav a.current{color:var(--wine)}.desktop-nav a.current{border-bottom:1px solid var(--wine);padding-bottom:5px}.nav-right{display:flex;align-items:center;gap:16px}.lang-switch{display:flex;align-items:center;gap:6px;color:#bdacaf;font-size:11px}.lang-button{border:0;background:none;padding:5px 1px;font-size:10px;font-weight:700;color:#a78f97}.lang-button.active{color:var(--wine)}.top-cta{background:var(--wine);color:#fff;padding:12px 18px;font-size:11px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.top-cta:hover{background:var(--wine-2)}.menu-toggle{display:none;background:none;border:0;width:34px;height:34px;padding:5px;flex-direction:column;justify-content:center;gap:5px}.menu-toggle i{background:var(--wine);width:24px;height:1.5px}.mobile-nav{display:none}.mobile-nav[hidden]{display:none!important}
.eyebrow{color:var(--wine-3);font-size:10px;letter-spacing:.21em;line-height:1.6;font-weight:700;text-transform:uppercase;display:flex;align-items:center;gap:14px;margin-bottom:24px}.eyebrow:before{content:'';width:33px;height:1px;background:var(--wine-3);flex-shrink:0}.hero-title,.page-title,.section-title{font-family:var(--serif);font-weight:400;letter-spacing:-.038em;line-height:1.2;margin:0;color:var(--wine)}.hero-title{font-size:clamp(54px,5.35vw,85px);line-height:1.13}.page-title{font-size:clamp(48px,5.6vw,78px);max-width:850px}.section-title{font-size:clamp(38px,4.2vw,62px);line-height:1.25}.hero-title em,.page-title em,.section-title em,.footer-heading em,.contact-title em{font-weight:400;font-style:italic;color:var(--wine-3)}.section{padding:108px 0}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;padding:14px 25px;min-height:51px;font-size:12px;font-weight:700;transition:all .2s;white-space:nowrap}.burgundy-button{background:var(--wine);color:white}.burgundy-button:hover{background:var(--wine-2);transform:translateY(-2px)}.arrow-link{display:inline-flex;align-items:center;border-bottom:1px solid var(--wine);color:var(--wine);padding-bottom:8px;font-size:12px;font-weight:700;line-height:1.8;white-space:nowrap;transition:padding .2s}.arrow-link:hover{padding-right:8px}.arrow-link span{margin-left:16px}.editorial-body{font-size:18px;line-height:1.95;color:#554849}.lead{font-size:17px;line-height:1.95;color:var(--text);max-width:680px}.section-title+p{margin-top:25px}
.home-hero{background:#f1e9de;position:relative;overflow:hidden}.home-hero:before{content:'';position:absolute;right:-9vw;top:-15vw;width:50vw;height:50vw;border:1px solid rgba(116,65,77,.12);border-radius:50%}.home-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:60px;align-items:center;min-height:660px;padding-top:49px;padding-bottom:55px}.hero-text{padding:20px 0 15px;position:relative;z-index:1}.hero-lead{font-size:18px;line-height:1.9;color:#655655;max-width:520px;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:33px;margin-top:36px}.hero-foot{border-top:1px solid rgba(91,56,64,.19);margin-top:66px;padding-top:23px;font-size:11px;font-weight:600;color:#76686a;display:flex;gap:16px;align-items:center}.hero-foot-sep{font-size:18px;color:#b88f90}.hero-art{position:relative;padding:24px 15px 35px 5px}.hero-art-frame{position:relative;aspect-ratio:4/4.65;max-height:548px;background:#e8d7c4;overflow:hidden;border-radius:45% 45% 2px 2px;box-shadow:17px 17px 0 rgba(126,59,79,.1)}.hero-art-frame img{width:100%;height:100%;object-fit:cover}.hero-art:before{content:'';position:absolute;inset:4px 30px 60px -20px;border:1px solid rgba(98,39,58,.36);border-radius:48% 48% 2px 2px;z-index:2;pointer-events:none}.art-label{display:block;text-align:right;color:#785e64;font:italic 12px var(--serif);margin-top:19px}.arch-mark{position:absolute;right:-35px;bottom:115px;width:105px;height:105px;background:var(--wine);color:#f7ece3;border-radius:50%;display:flex;justify-content:center;align-items:center;font:italic 58px var(--serif);box-shadow:0 3px 20px rgba(66,25,42,.1)}
.intro-block{background:var(--ivory)}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:95px;align-items:start}.intro-grid p{margin:0 0 18px}.pathways{background:var(--oat)}.pathway-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:44px}.pathway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pathway-card{min-height:356px;padding:28px 30px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}.pathway-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(67,27,40,.1)}.card-1{background:#e3d0bd}.card-2{background:#d5bdba}.card-3{background:#eee4d6}.card-index{font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--wine-2);z-index:1}.card-body{position:relative;z-index:1;max-width:290px}.card-body h3{font:400 30px/1.22 var(--serif);letter-spacing:-.02em;color:var(--wine);margin:0 0 10px}.card-body p{font-size:12px;line-height:1.8;color:#654f54;margin:0}.card-arrow{display:inline-flex;color:var(--wine);font-size:24px;margin-top:12px}.card-decoration{position:absolute;opacity:.25;pointer-events:none;color:var(--wine)}.deco-circle{width:250px;height:250px;border:1.5px solid var(--wine);border-radius:50%;top:-56px;right:-62px}.deco-circle:after{content:'';position:absolute;inset:29px;border:1px solid var(--wine);border-radius:50%}.deco-leaf{right:6px;top:-9px;width:195px;height:195px}.deco-leaf svg{width:100%;height:100%;transform:rotate(21deg)}.deco-lines{right:22px;top:30px;display:flex;gap:12px}.deco-lines i{height:127px;width:22px;border:1px solid var(--wine);border-radius:100px 100px 4px 4px;transform:rotate(26deg)}
.cta-band{background:var(--wine);padding:73px 0;color:#f9f1eb;position:relative;overflow:hidden}.cta-band:after{content:'';position:absolute;right:-130px;top:-200px;width:490px;height:490px;border:1px solid rgba(243,224,213,.15);border-radius:50%;pointer-events:none}.cta-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:45px;z-index:1}.cta-inner .eyebrow{color:#d9b3b6}.cta-inner .eyebrow:before{background:#d9b3b6}.cta-inner h2{color:#fff7f0;font-size:clamp(35px,4.1vw,56px)}.cta-inner h2 em{color:#d9b1b2}.cta-inner p{color:#e5ced0;margin:20px 0 0}.light-button{background:#f8f0e6;color:var(--wine);padding:15px 28px}.light-button:hover{background:#e6d7c9}
.subhero{background:var(--cream);overflow:hidden;position:relative;border-bottom:1px solid rgba(81,48,54,.1)}.subhero-inner{min-height:430px;padding:77px 0 80px;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:80px}.subhero .lead{margin:23px 0 0}.subhero-art{position:relative;width:240px;height:280px;display:grid;place-items:center;color:var(--wine-3)}.art-ring{border:1px solid rgba(94,45,57,.27);width:250px;height:250px;border-radius:50%;position:absolute}.subhero-art .flowerline{width:165px;height:165px;transform:rotate(16deg)}.prose-split{display:grid;grid-template-columns:1.06fr .94fr;gap:90px;align-items:start}.prose-split p{margin-top:0;margin-bottom:19px;color:var(--text)}.prose-split .editorial-body{color:#514547}.values-section{background:var(--oat)}.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 62px;margin-top:47px}.value-item{border-top:1px solid rgba(81,41,57,.23);padding:26px 0 38px;display:grid;grid-template-columns:50px 1fr;column-gap:16px}.value-index{font-size:12px;letter-spacing:.11em;color:var(--wine-3);grid-row:1/3}.value-item h3{font:400 27px/1.25 var(--serif);color:var(--wine);margin:0 0 12px}.value-item p{grid-column:2;color:#695a5b;margin:0;font-size:13px}.statement-wrap{text-align:center}.statement-line{background:var(--tan);width:1px;height:55px;margin:0 auto 25px}.statement{font:italic 400 clamp(30px,3.8vw,49px)/1.5 var(--serif);color:var(--wine);margin:0}.statement-caption{text-transform:uppercase;letter-spacing:.15em;font-size:10px;color:var(--wine-3);margin-top:20px}
.fact-head{margin-bottom:38px}.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fact-grid>div{padding:32px 27px;border-right:1px solid var(--line);display:flex;flex-direction:column}.fact-grid>div:first-child{padding-left:0}.fact-grid>div:last-child{border-right:0}.fact-grid small{font:700 10px/1.6 var(--sans);letter-spacing:.16em;color:var(--wine-3)}.fact-grid strong{font:400 46px/1.35 var(--serif);color:var(--wine);white-space:nowrap;margin:7px 0}.fact-grid span{font-size:12px;color:var(--text)}.curriculum-section{background:var(--oat)}.program-intro{max-width:670px;margin-bottom:42px}.program-intro>p{font-size:16px;color:var(--text)}.area-list{border-top:1px solid var(--line)}.area-row{display:grid;grid-template-columns:90px .8fr 1fr;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding:23px 0}.area-n{color:var(--wine-3);font-size:12px}.area-row h3{font:400 29px var(--serif);color:var(--wine);margin:0}.area-row p{color:var(--text);font-size:13px;margin:0}
.family-panel{background:var(--oat)}.family-panel-head{margin-bottom:40px}.family-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.family-stats article{padding:30px;background:#faf6f0;min-height:250px;display:flex;flex-direction:column;align-items:flex-start}.family-stats article small{font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--wine-3)}.family-stats article strong{font:400 55px/1.2 var(--serif);color:var(--wine);margin:22px 0}.family-stats article p{font-size:12px;color:var(--text);line-height:1.85;margin:0}.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.faq-layout>div>p{color:var(--text);margin-top:23px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:600;color:var(--wine);padding:22px 0;gap:20px}.faq-list summary::marker{content:''}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span:last-child{font:24px/1 var(--serif);color:var(--wine-3)}.faq-list details[open] summary span:last-child{transform:rotate(45deg)}.faq-list details p{color:var(--text);font-size:13px;margin:0;padding:0 35px 23px 0}
.feature-event{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;background:var(--cream)}.event-art{min-height:545px;display:flex;align-items:center;justify-content:center;background:linear-gradient(155deg,#e0c4b9,#b98a90);position:relative;overflow:hidden;color:var(--wine)}.event-art .flowerline{width:228px;height:228px;position:relative;color:#683249;transform:rotate(-12deg)}.art-large{position:absolute;font:400 260px/1 var(--serif);color:#f4e7dd;opacity:.27;top:-22px;left:0}.event-ring{position:absolute;width:360px;height:360px;border:1px solid rgba(80,31,52,.31);border-radius:50%}.event-vertical{font-size:10px;letter-spacing:.18em;position:absolute;writing-mode:vertical-rl;right:25px;top:42px}.event-content{padding:60px 60px 60px 0}.event-content .section-title{font-size:clamp(39px,4vw,61px)}.event-content>p{margin:20px 0}.event-details{display:flex;flex-wrap:wrap;gap:9px 19px;margin:25px 0 30px}.event-details span{font-size:11px;border-bottom:1px solid var(--line);padding-bottom:4px;font-weight:600;color:#76605e}.upcoming-section{background:var(--oat)}.upcoming-grid{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.upcoming-grid .editorial-body{max-width:610px;margin-bottom:16px}.small-detail{font-size:12px;color:var(--wine-3);font-weight:700;margin-bottom:25px}.nido-art{height:370px;position:relative;background:#e2d3c3;overflow:hidden}.nido-ring{width:320px;height:320px;border:1px solid rgba(100,37,57,.3);border-radius:50%;position:absolute;top:20px;left:18%}.nido-large-circle{position:absolute;width:155px;height:155px;border-radius:50%;background:#a97980;top:95px;left:36%}.nido-small-circle{position:absolute;width:68px;height:68px;border-radius:50%;background:#dcb6a1;top:54px;left:31%}.nido-line{position:absolute;width:1px;height:270px;background:#fff5ea;transform:rotate(32deg);top:55px;left:53%}
.visit-grid{display:grid;grid-template-columns:1fr .88fr;gap:100px;align-items:start}.visit-story>p.editorial-body{margin:24px 0 40px}.visit-detail{border-top:1px solid var(--line);padding:18px 0;display:flex;gap:28px;align-items:start}.visit-detail>span{color:var(--wine-3);font:12px var(--sans)}.visit-detail strong{font:400 20px var(--serif);color:var(--wine)}.visit-detail p{font-size:13px;line-height:1.8;color:var(--text);margin:8px 0 0}.visit-contact{background:var(--cream);padding:45px;box-shadow:12px 12px 0 #e9dad0}.contact-kicker{font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--wine-3);margin-bottom:18px}.contact-title{font:400 clamp(32px,3vw,43px)/1.25 var(--serif);color:var(--wine);margin:0}.visit-contact>p{font-size:13px;color:var(--text)}.contact-form{display:grid;gap:14px;margin-top:24px}.contact-form label{font-size:11px;color:var(--wine);font-weight:700;letter-spacing:.02em;display:flex;flex-direction:column;gap:6px}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid #d8c7bd;background:#fffcf7;color:#503840;padding:11px 12px;font-size:13px;border-radius:0;width:100%}.contact-form textarea{resize:vertical}.contact-form .button{width:100%;margin-top:3px}.contact-disclaimer{font-size:10px;color:#8c7776;line-height:1.6;margin:0}.form-notice{font-size:11px}.contact-foot{border-top:1px solid var(--line);margin-top:28px;padding-top:18px;color:var(--wine-3);font-size:11px}
.footer{background:#e9ddd1}.footer-top{padding:74px 0 62px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.footer-kicker{color:var(--wine);letter-spacing:.19em;font-weight:700;font-size:10px}.footer-heading{font:400 32px/1.4 var(--serif);color:var(--wine);margin:18px 0 0}.footer-nav{display:flex;flex-direction:column;align-items:start;gap:10px}.footer-nav a{font-size:12px;color:var(--wine);font-weight:600}.footer-nav a:hover{text-decoration:underline;text-underline-offset:4px}.footer-address{font-size:12px;color:var(--wine);line-height:1.8}.footer-address p{margin-top:0}.footer-address strong{font-size:12px;font-weight:700}.footer-bottom{border-top:1px solid rgba(85,40,55,.19);display:flex;justify-content:space-between;gap:20px;padding:20px 0 26px;color:#826e6c;font-size:10px;letter-spacing:.05em}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.desktop-nav{gap:14px}.header-inner{gap:15px}.nav-right{gap:12px}.brand strong{font-size:21px}.brand svg{width:30px}.top-cta{padding:11px}.home-grid{gap:35px}.pathway-card{padding:23px}.hero-title{font-size:clamp(49px,5.2vw,70px)}}
@media(max-width:940px){.desktop-nav,.top-cta{display:none}.site-header{height:74px}.menu-toggle{display:flex}.mobile-nav{display:flex;flex-direction:column;position:absolute;top:74px;right:0;left:0;background:var(--ivory);border-bottom:1px solid var(--line);padding:18px 34px 26px;gap:16px;box-shadow:0 14px 20px rgba(50,20,30,.08)}.mobile-nav a{font-size:14px}.home-grid{min-height:auto;grid-template-columns:1fr .8fr}.hero-title{font-size:clamp(48px,6vw,68px)}.hero-foot{margin-top:40px;flex-wrap:wrap;gap:10px}.prose-split,.intro-grid,.visit-grid{gap:45px}.visit-contact{padding:32px}.event-content{padding:40px 30px 40px 0}.feature-event{gap:36px}.area-row{grid-template-columns:50px .85fr 1fr}}
@media(max-width:730px){.container{width:calc(100% - 40px)}.announcement{font-size:8px;gap:7px}.home-grid{grid-template-columns:1fr;padding-top:53px;padding-bottom:48px;gap:35px}.hero-title{font-size:clamp(49px,10vw,70px)}.hero-lead{font-size:16px;max-width:480px}.hero-actions{gap:20px}.hero-foot{margin-top:32px;line-height:1.5}.hero-art{max-width:465px;width:100%;margin:0 auto}.hero-art-frame{max-height:440px}.arch-mark{right:0;bottom:80px;width:85px;height:85px;font-size:46px}.home-hero:before{width:80vw;height:80vw}.section{padding:73px 0}.section-title{font-size:clamp(37px,8.7vw,52px)}.intro-grid,.prose-split,.faq-layout,.visit-grid,.upcoming-grid{grid-template-columns:1fr;gap:26px}.intro-grid .editorial-body{margin:0}.pathway-grid{grid-template-columns:1fr;gap:12px}.pathway-card{min-height:250px}.card-body h3{font-size:30px}.pathway-head{margin-bottom:28px}.cta-inner{display:block}.cta-inner .button{margin-top:26px}.subhero-inner{grid-template-columns:1fr;gap:8px;min-height:auto;padding:65px 0 58px}.subhero-art{width:140px;height:95px;justify-self:end;margin-top:-25px;opacity:.35}.subhero-art .art-ring{width:160px;height:160px}.subhero-art .flowerline{width:115px;height:115px}.page-title{font-size:clamp(45px,9.3vw,66px)}.lead{font-size:16px}.values-grid,.family-stats{grid-template-columns:1fr;gap:8px}.value-item{grid-template-columns:37px 1fr}.fact-grid{grid-template-columns:repeat(2,1fr)}.fact-grid>div{padding:25px 18px}.fact-grid>div:first-child{padding-left:18px}.fact-grid>div:nth-child(2){border-right:0}.fact-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.area-row{grid-template-columns:38px 1fr;gap:9px}.area-row h3{font-size:24px}.area-row p{grid-column:2}.feature-event{grid-template-columns:1fr;gap:0}.event-art{min-height:300px}.event-art .flowerline{width:150px;height:150px}.event-ring{width:240px;height:240px}.event-content{padding:36px 24px 43px}.nido-art{height:270px}.nido-ring{height:240px;width:240px}.visit-contact{margin-top:15px}.footer-top{grid-template-columns:1fr 1fr;gap:38px;padding:55px 0 43px}.footer-brand{grid-column:1/-1}.footer-bottom{display:flex;flex-direction:column;gap:8px}.footer-heading{font-size:30px}}
@media(max-width:400px){.brand strong{font-size:19px}.brand small{font-size:7px}.brand{gap:4px}.hero-title{font-size:46px}.hero-actions{flex-wrap:wrap}.hero-foot-sep{display:none}.hero-foot{display:flex;flex-direction:column;align-items:start}.footer-top{grid-template-columns:1fr}.footer-brand{grid-column:auto}.card-body h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Owner-supplied Nocalli logo; all original layout and page styles preserved. */
.brand-logo{width:176px;height:auto;max-height:70px;object-fit:contain;}
.footer-logo{width:195px;max-width:100%;height:auto;}
@media(max-width:1100px){.brand-logo{width:158px}}
@media(max-width:940px){.brand-logo{width:165px}}
@media(max-width:400px){.brand-logo{width:146px}}

/* Parent-partnership details: minimal editorial styling, consistent with the original design. */
.participation-section{background:var(--ivory);border-top:1px solid var(--line)}
.participation-top{display:grid;grid-template-columns:1fr .85fr;gap:80px;align-items:end;margin-bottom:42px}
.participation-top .section-title{font-size:clamp(34px,3.5vw,50px)}
.participation-top>p{font-size:14px;line-height:1.9;color:var(--text);margin:0}
.participation-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}
.participation-roles article{border-top:1px solid var(--line);padding:27px 0 18px}
.role-index{font-size:11px;color:var(--wine-3);letter-spacing:.13em}
.participation-roles h3{color:var(--wine);font:400 27px/1.35 var(--serif);margin:16px 0 12px}
.participation-roles p,.participation-note{font-size:13px;color:var(--text);line-height:1.9;margin:0}
.participation-note{border-top:1px solid var(--line);padding-top:22px;margin-top:22px;font-style:italic;max-width:780px}
@media(max-width:730px){.participation-top,.participation-roles{grid-template-columns:1fr;gap:24px}.participation-top{margin-bottom:23px}.participation-roles article{padding-top:22px}.participation-roles h3{font-size:24px}}

/* No arrow icons anywhere, including the CTA and footer areas. */
.editorial-link{display:inline-flex;align-items:center;border-bottom:1px solid var(--wine);color:var(--wine);padding-bottom:8px;font-size:12px;font-weight:700;line-height:1.8;white-space:nowrap;transition:color .2s}
.editorial-link span{margin:0}
.editorial-link::before,.editorial-link::after,.footer a::before,.footer a::after,.pathway-card::before,.pathway-card::after,.button::before,.button::after{content:none!important}
.card-arrow,.button-arrow,.link-arrow,.arrow-icon,.icon-arrow{display:none!important}


/* Nocalli refined editorial typography: quieter hierarchy; content and palette unchanged. */
.hero-title {font-size:clamp(44px,4.25vw,64px);line-height:1.22;letter-spacing:-.032em;}
.page-title {font-size:clamp(42px,4.5vw,62px);line-height:1.24;letter-spacing:-.028em;}
.section-title {font-size:clamp(32px,3.15vw,46px);line-height:1.31;letter-spacing:-.028em;}
.cta-inner h2 {font-size:clamp(32px,3.1vw,44px);}
.participation-top .section-title {font-size:clamp(32px,3.05vw,44px);}
.event-content .section-title {font-size:clamp(32px,3.15vw,46px);}
.card-body h3 {font-size:26px;line-height:1.3;}
.footer-heading {font-size:26px;line-height:1.42;}
.value-item h3,.participation-roles h3 {font-size:24px;}
.contact-title {font-size:clamp(30px,2.55vw,38px);}
.statement {font-size:clamp(29px,3vw,40px);}
@media(max-width:940px) {
  .hero-title {font-size:clamp(42px,5.1vw,56px);}
}
@media(max-width:730px) {
  .hero-title {font-size:clamp(37px,8.3vw,46px);line-height:1.24;}
  .page-title {font-size:clamp(36px,7.9vw,47px);}
  .section-title {font-size:clamp(32px,7vw,41px);}
  .cta-inner h2 {font-size:clamp(31px,6.9vw,39px);}
  .participation-top .section-title,.event-content .section-title {font-size:clamp(31px,7vw,40px);}
  .card-body h3 {font-size:25px;}
  .footer-heading {font-size:25px;}
}
@media(max-width:400px) {
  .hero-title {font-size:37px;}
  .page-title {font-size:36px;}
  .section-title {font-size:32px;}
}

/* AMI explanation: an editorial subsection, with no change to the approved palette or type scale. */
.ami-explainer {background:var(--ivory);border-bottom:1px solid var(--line);}
.ami-explainer .section-title {max-width:460px;}
.ami-source {display:inline-block;margin-top:14px;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:12px;font-weight:600;color:var(--wine);line-height:1.65;text-decoration:none;}
.ami-source:hover {color:var(--wine-3);}


/* Observation Room and Experiences: quiet, brand-matched editorial sections. */
.observation-values{background:var(--oat)}.observation-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}
.observation-features article,.experience-types article{border-top:1px solid var(--line);padding-top:25px}
.observation-features h3,.experience-types h3{font:400 22px/1.35 var(--serif);color:var(--wine);margin:14px 0 10px}
.observation-features p,.experience-types p{font-size:13px;line-height:1.9;color:var(--text);margin:0}
.observation-small{font-size:12px;line-height:1.8;color:var(--text);border-top:1px solid var(--line);padding-top:20px;margin-top:34px}
.gallery-layout{display:grid;grid-template-columns:.93fr 1.07fr;gap:85px;align-items:center}.gallery-placeholder{min-height:350px;background:linear-gradient(145deg,#e2d1c3,#f1e8dd);border:1px solid rgba(96,59,64,.13);display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;overflow:hidden;text-align:center;padding:30px;color:var(--wine)}
.gallery-placeholder:before{content:'';width:270px;height:270px;position:absolute;border:1px solid rgba(93,42,57,.19);border-radius:50%;top:-95px;right:-95px}
.gallery-word{font:italic 400 100px var(--serif);opacity:.13;line-height:1.3}.gallery-overline{font-size:10px;font-weight:700;letter-spacing:.17em;margin:17px 0 8px}.gallery-caption{font:italic 18px var(--serif)}
.experience-categories{background:var(--ivory)}.experience-preface{max-width:730px;font-size:14px;color:var(--text);line-height:1.85;margin:17px 0 38px}
.experience-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}
.featured-series{background:var(--oat)}.series-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:36px}
.series-card{background:var(--ivory);padding:35px 35px 38px;min-height:385px;display:flex;flex-direction:column;align-items:flex-start}
.series-overline{font-size:10px;line-height:1.6;letter-spacing:.14em;font-weight:700;color:var(--wine-3)}
.series-card h3{font:400 29px/1.28 var(--serif);letter-spacing:-.018em;color:var(--wine);margin:21px 0 15px}
.series-card p{font-size:13px;line-height:1.9;color:var(--text);margin:0 0 14px}.series-card .series-detail{font-size:11px;color:var(--wine-3);font-weight:600;margin:6px 0 24px}.series-card .editorial-link{margin-top:auto}
.experience-request{background:var(--ivory)}.request-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:start}
.request-layout .editorial-body{font-size:16px;line-height:1.9;margin-top:22px}.request-note{font-size:12px;color:var(--wine-3);line-height:1.85}
.request-form-panel{background:var(--cream);padding:38px 42px;border:1px solid var(--line)}.request-form-panel .contact-form{margin-top:0}.hidden-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.studio-coming{background:var(--cream);border-top:1px solid var(--line)}.studio-coming-row{display:flex;justify-content:space-between;gap:80px;align-items:center}.studio-coming-row>div{max-width:610px}.studio-coming-row p{font-size:14px;line-height:1.9;color:var(--text);margin-top:18px}
@media(max-width:1150px){.desktop-nav,.top-cta{display:none}.site-header{height:74px}.menu-toggle{display:flex}.mobile-nav{display:flex;flex-direction:column;position:absolute;top:74px;right:0;left:0;background:var(--ivory);border-bottom:1px solid var(--line);padding:18px 34px 26px;gap:16px;box-shadow:0 14px 20px rgba(50,20,30,.08)}.mobile-nav a{font-size:14px}}
@media(max-width:730px){.gallery-layout,.request-layout,.series-grid{grid-template-columns:1fr;gap:24px}.observation-features{grid-template-columns:1fr;gap:22px}.experience-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.gallery-placeholder{min-height:275px}.series-card{min-height:0;padding:28px}.request-form-panel{padding:25px}.studio-coming-row{display:block}.studio-coming-row>a{margin-top:14px}.experience-types h3,.observation-features h3{font-size:21px}}
@media(max-width:400px){.experience-types{grid-template-columns:1fr}.gallery-caption{font-size:16px}}

/* Quiet Option 2 floral line detail in the existing burgundy strip. */
.announcement{overflow:hidden}
.announcement .strip-flower-sketch{display:block;width:min(350px,88vw);height:27px;flex:0 0 auto}
@media(max-width:600px){.announcement .strip-flower-sketch{width:min(300px,90vw);height:25px}}

/* Nocalli homepage section heading: quieter, one editorial line on wider screens. */
.pathways .pathway-head > .section-title {
  font-size:clamp(24px,2.45vw,35px);
  letter-spacing:-.025em;
  white-space:nowrap;
}
@media(max-width:820px) {
  .pathways .pathway-head > .section-title {
    font-size:clamp(27px,4.1vw,32px);
    white-space:normal;
  }
}

/* Two-column footer; contact belongs in footer, not mobile menu */
.footer-top{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:45px}
.footer-brand{grid-column:1;grid-row:1}
.footer-nav{grid-column:2;grid-row:1 / span 2}
.footer-address{grid-column:1;grid-row:2;margin-top:-20px}
@media(max-width:730px){.footer-top{grid-template-columns:1fr 1fr;gap:22px}.footer-brand{grid-column:1/-1;grid-row:auto}.footer-nav{grid-column:2;grid-row:auto}.footer-address{grid-column:1;grid-row:auto;margin-top:0}}
@media(max-width:400px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-nav{grid-column:2}.footer-address{grid-column:1}}

/* Two visible columns of navigation links in the footer */
.footer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:14px;align-content:start;align-items:start}
.footer-nav a{display:block;min-width:0}
@media(max-width:730px){.footer-top{grid-template-columns:1fr}.footer-brand{grid-column:1;grid-row:auto}.footer-nav{grid-column:1;grid-row:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}.footer-address{grid-column:1;grid-row:auto;margin:0}}
@media(max-width:400px){.footer-top{grid-template-columns:1fr}.footer-brand,.footer-nav,.footer-address{grid-column:1}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}}

/* Actual Nocalli classroom photo — focal point only, original frame retained */
.hero-art-frame img[src$="nocalli-classroom.jpg"]{object-position:50% 50%;}

/* Full weekday names remain readable in The Program fact grid. */
.fact-grid strong.weekdays{font:400 clamp(16px,1.45vw,20px)/1.3 var(--serif);white-space:normal;min-height:62px;display:flex;align-items:center;}
@media(max-width:730px){.fact-grid strong.weekdays{font-size:18px;min-height:62px;}}

/* A small additional welcome for families with pre-walking infants. */
.observation-infant-note{border-left:2px solid var(--wine-3);padding:5px 0 5px 22px;margin:35px 0 0;max-width:660px}
.observation-infant-note h3{font:400 24px/1.4 var(--serif);color:var(--wine);margin:0 0 9px}
.observation-infant-note p{font-size:13px;line-height:1.9;color:var(--text);margin:0}

@media (min-width:681px) and (max-width:1060px){.family-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.family-stats article:last-child{grid-column:1/-1;min-height:170px}}
