
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --evergreen:#12352D;
  --moss:#4A5C44;
  --sage:#7D8C6B;
  --olive:#A7B08A;
  --gold:#C8A15A;
  --cream:#FBF6EE;
  --cream-2:#F5EFE5;
  --stone:#273B35;
  --muted:#65736E;
  --line:rgba(18,53,45,.14);
  --shadow:0 24px 70px rgba(18,53,45,.16);
  --soft-shadow:0 16px 45px rgba(18,53,45,.10);
  --radius:26px;
  --font-serif:'Cormorant Garamond','Playfair Display',Georgia,serif;
  --font-sans:'Inter','Lato',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--cream);}
body{margin:0;font-family:var(--font-sans);color:var(--stone);background:linear-gradient(180deg,#fffaf2 0%,var(--cream) 38%,#f7f0e7 100%);font-size:16px;line-height:1.65;}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
:root{ --page-pad:clamp(22px,5vw,88px); --visual-pad:clamp(24px,4.4vw,76px); --brand-indent:54px; }
.container{width:min(1240px,calc(100% - (var(--page-pad) * 2)));margin:0 auto}
.narrow{width:min(840px,calc(100% - (var(--page-pad) * 2)));margin:0 auto}
.services-preview>.container,
.interactive-section>.container,
.quote-section>.container{width:min(1320px,calc(100% - (var(--visual-pad) * 2)))}

.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .35s ease,box-shadow .35s ease,border-color .35s ease;}
.site-header.scrolled{background:rgba(251,246,238,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);box-shadow:0 8px 32px rgba(18,53,45,.06)}
.nav-wrap{height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;position:relative;}
.site-header .nav-wrap{width:min(1390px,calc(100% - (var(--visual-pad) * 2)));}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--evergreen);}
.brand-mark{width:38px;height:38px;color:var(--gold)}
.brand-mark-img{width:42px;height:42px;object-fit:contain;flex:0 0 auto;display:block}
.brand-text{display:flex;flex-direction:column;line-height:1;letter-spacing:.22em;text-transform:uppercase;}
.brand-text strong{font-family:var(--font-serif);font-size:30px;font-weight:600;letter-spacing:.28em;color:var(--evergreen)}
.brand-text span{font-size:10px;font-weight:700;color:var(--gold);letter-spacing:.28em;margin-top:7px;}
.brand.light,.brand.light .brand-text strong{color:#fff}.brand.light .brand-mark,.brand.light .brand-text span{color:var(--gold)}
.nav-links{justify-self:center;display:flex;align-items:center;gap:28px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.11em;color:var(--evergreen)}
.nav-links a{position:relative;padding:8px 0;}
.nav-links a:after{content:"";position:absolute;left:0;bottom:2px;width:0;height:1px;background:var(--gold);transition:width .25s ease}
.nav-links a:hover:after{width:100%}
.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;font-weight:800;letter-spacing:-.01em;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease;}
.nav-cta{padding:12px 22px;background:var(--evergreen);color:#fff;font-size:12px;box-shadow:0 12px 34px rgba(18,53,45,.18)}
.nav-cta:hover,.btn:hover{transform:translateY(-2px)}
.btn{padding:15px 24px;border:1px solid transparent;min-height:48px;}
.btn.primary{background:var(--evergreen);color:#fff;box-shadow:0 18px 40px rgba(18,53,45,.18)}
.btn.secondary{background:rgba(255,255,255,.62);border-color:rgba(200,161,90,.55);color:var(--evergreen)}
.btn.secondary:hover{background:#fff;border-color:var(--gold)}
.btn span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.16)}
.btn.secondary span{background:rgba(18,53,45,.08)}
.menu-toggle{display:none;border:0;background:transparent;padding:10px;justify-self:end}.menu-toggle span{display:block;width:28px;height:2px;background:var(--evergreen);margin:6px 0;transition:.25s ease}

.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:var(--cream);}
.hero-bg{position:absolute;inset:0;background:url('../img/hero-lawn.webp') center/cover no-repeat;transform:scale(1.04);animation:heroDrift 16s ease-out forwards;}
.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,246,238,.96) 0%,rgba(251,246,238,.88) 27%,rgba(251,246,238,.44) 51%,rgba(18,53,45,.18) 100%)}
.hero-wash{position:absolute;inset:0;background:radial-gradient(circle at 20% 35%,rgba(255,255,255,.55),transparent 42%),linear-gradient(0deg,rgba(251,246,238,.92) 0%,rgba(251,246,238,0) 24%)}
.hero-content{position:relative;z-index:1;width:min(1390px,calc(100% - (var(--visual-pad) * 2)));display:block;padding:clamp(112px,14vh,136px) 0 clamp(36px,5.5vh,54px);min-height:100svh;}
.hero-intro{max-width:560px;margin-left:var(--brand-indent);padding-top:12px}
.hero-lower{display:grid;grid-template-columns:minmax(0,540px) minmax(520px,1fr);gap:clamp(56px,8vw,138px);align-items:start;margin-left:var(--brand-indent)}
.hero-copy-block{grid-column:1;grid-row:1}
.hero-copy{padding:0}
.eyebrow{display:inline-flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.22em;color:var(--evergreen);font-size:12px;font-weight:800;margin-bottom:14px;}
.eyebrow span{width:32px;height:1px;background:var(--gold);display:inline-block}
h1,h2,h3{font-family:var(--font-serif);color:var(--evergreen);line-height:.98;margin:0;font-weight:600;letter-spacing:-.035em}
h1{font-size:clamp(72px,9vw,132px);max-width:610px;}
.hero h1{font-size:clamp(58px,5.7vw,92px);max-width:550px;line-height:1.0;}
h2{font-size:clamp(44px,6vw,82px);}
h3{font-size:28px;line-height:1.06}
.gold-rule{width:98px;height:2px;background:var(--gold);margin:clamp(26px,3vh,32px) 0 clamp(20px,2.5vh,26px)}
.lead{font-size:20px;line-height:1.75;max-width:570px;color:#24453d;margin:0 0 28px}.hero .lead{font-size:18px;line-height:1.65;max-width:540px;margin-bottom:0}.small-lead{font-size:18px}
.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:22px}.service-area{font-size:14px;color:#5d706a;margin:18px 0 0}
.trust-card{grid-column:2;grid-row:1;justify-self:end;align-self:stretch;margin:0;background:rgba(18,53,45,.96);color:#fff;border-radius:25px;padding:22px 28px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;width:95%;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.08)}
.trust-item .trust-icon{width:22px;height:22px;display:block;margin-bottom:12px;fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.trust-item strong{font-size:13px;line-height:1.3;display:block}.trust-item p{font-size:12px;line-height:1.45;color:rgba(255,255,255,.82);margin:8px 0 0}

.section{padding:118px 0;position:relative}.services-preview{background:var(--cream-2)}
.section-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px;margin-bottom:44px}.section-head h2{max-width:760px}.section-button{align-self:center}
.service-card-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.image-service-card{height:330px;border-radius:22px;overflow:hidden;position:relative;box-shadow:var(--soft-shadow);isolation:isolate;background:var(--evergreen)}
.image-service-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease,filter .8s ease;filter:saturate(.9) contrast(.96)}
.image-service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,53,45,.02) 0%,rgba(18,53,45,.18) 48%,rgba(18,53,45,.88) 100%)}
.image-service-card span{position:absolute;left:24px;right:20px;bottom:24px;z-index:2;color:#fff;font-family:var(--font-serif);font-size:31px;line-height:.92;font-weight:700;text-shadow:0 2px 20px rgba(0,0,0,.35)}
.image-service-card:hover img{transform:scale(1.07);filter:saturate(1.05) contrast(1.02)}

.interactive-section{background:linear-gradient(180deg,var(--cream) 0%,#fffaf2 100%)}
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,1fr);gap:82px;align-items:center}.detail-copy p{margin-top:28px}.garden-reveal{height:420px;position:relative;overflow:hidden;border-radius:30px;box-shadow:var(--shadow);background:var(--evergreen);cursor:crosshair;touch-action:none}.garden-reveal img{width:100%;height:100%;object-fit:cover;filter:saturate(.95) brightness(.9)}
.detail-lens{position:absolute;width:215px;height:215px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);background-image:url('../img/interactive-garden-after.webp');background-size:780px auto;background-position:center;box-shadow:0 20px 60px rgba(0,0,0,.36),0 0 0 8px rgba(251,246,238,.18);pointer-events:none;transition:width .25s ease,height .25s ease;}
.garden-reveal:hover .detail-lens{width:245px;height:245px}.reveal-label{position:absolute;left:22px;bottom:20px;background:rgba(251,246,238,.92);color:var(--evergreen);font-size:13px;font-weight:800;border-radius:999px;padding:12px 18px;box-shadow:0 10px 30px rgba(0,0,0,.16)}

.process-preview{background:var(--cream-2)}.process-grid{display:grid;grid-template-columns:minmax(0,410px) 1fr;gap:76px;align-items:start}.section-sticky{position:sticky;top:120px}.section-sticky p{color:#51645e;margin:28px 0}.steps-list{display:grid;gap:18px}.step-card{background:rgba(255,255,255,.64);border:1px solid var(--line);border-radius:24px;padding:28px 30px;box-shadow:0 14px 40px rgba(18,53,45,.06)}.step-card span{display:block;color:var(--gold);font-weight:800;letter-spacing:.18em;margin-bottom:10px}.step-card h3{font-size:32px}.step-card p{color:#556862;margin:14px 0 0}

.quote-section{background:#fffaf2;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quote-grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:64px;align-items:center}.quote-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.quote-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:38px;box-shadow:var(--soft-shadow)}.quote-card h3{margin-bottom:20px}.quote-card ul{padding-left:18px;margin:0}.quote-card li{margin:10px 0;color:#52635e}
.trust-strip{background:var(--evergreen);color:#fff;padding:34px 0}.trust-strip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.trust-strip strong{display:block;color:#fff;font-size:14px}.trust-strip span{display:block;color:rgba(255,255,255,.72);font-size:13px;line-height:1.5;margin-top:6px}

.page-hero{padding:170px 0 92px;background:radial-gradient(circle at top right,rgba(167,176,138,.22),transparent 34%),linear-gradient(180deg,#fffaf2 0%,var(--cream) 100%);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(58px,8vw,104px);max-width:900px}.page-hero .lead{max-width:740px;margin-top:24px}.services-icons-section{background:var(--cream)}.icon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-panel{background:rgba(255,255,255,.64);border:1px solid var(--line);border-radius:28px;padding:36px;box-shadow:0 14px 42px rgba(18,53,45,.07)}.icon-wrap{width:76px;height:76px;border-radius:22px;background:rgba(167,176,138,.13);display:grid;place-items:center;margin-bottom:24px;border:1px solid rgba(200,161,90,.25)}.icon-wrap svg{width:46px;height:46px;fill:none;stroke:var(--evergreen);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.service-panel h2{font-size:36px}.service-panel p{color:#566862;margin-bottom:0}

.split-feature{background:var(--cream-2)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.align-start{align-items:start}.feature-image{border-radius:30px;overflow:hidden;box-shadow:var(--shadow);min-height:420px}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy p{font-size:18px;color:#51645e}.mini-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:28px}.mini-list span,.value-card{border:1px solid var(--line);background:rgba(255,255,255,.62);border-radius:18px;padding:14px 16px;font-weight:700;color:var(--evergreen)}.collage{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:transparent;box-shadow:none}.collage img{height:420px;border-radius:26px;object-fit:cover;box-shadow:var(--soft-shadow)}.collage img:nth-child(2){margin-top:60px;height:360px}.values-section{background:#fffaf2}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.value-card{padding:34px}.value-card h2{font-size:36px}.value-card p{font-weight:400;color:#586961;margin-bottom:0}

.process-page-section{background:var(--cream)}.process-timeline{max-width:900px}.timeline-item{display:grid;grid-template-columns:110px 1fr;gap:36px;position:relative;padding:0 0 56px}.timeline-item:before{content:"";position:absolute;left:54px;top:70px;bottom:10px;width:1px;background:linear-gradient(var(--gold),rgba(200,161,90,0))}.timeline-item:last-child:before{display:none}.timeline-number{width:86px;height:86px;border-radius:50%;border:1px solid rgba(200,161,90,.55);display:grid;place-items:center;color:var(--gold);font-weight:800;letter-spacing:.18em;background:#fffaf2}.timeline-item h2{font-size:44px}.timeline-item p{font-size:18px;color:#51645e}.quote-band{background:linear-gradient(135deg,var(--evergreen),#17483d);color:#fff}.band-inner{text-align:center}.band-inner h2{color:#fff}.band-inner p{color:rgba(255,255,255,.78);margin-bottom:26px}

.contact-section{background:var(--cream-2)}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:start}.contact-panel,.contact-details{background:rgba(255,255,255,.68);border:1px solid var(--line);border-radius:30px;padding:42px;box-shadow:var(--soft-shadow)}.contact-panel p,.contact-details p{color:#52635e}.contact-details a{color:var(--evergreen);font-weight:700}.contact-details h2,.contact-panel h2{font-size:48px}

.footer{position:relative;overflow:hidden;background:radial-gradient(circle at 92% 22%,rgba(167,176,138,.12),transparent 30%),linear-gradient(180deg,#12352D 0%,#0f3029 100%);color:rgba(255,255,255,.76);padding:72px 0 26px}.footer .container{width:min(1360px,calc(100% - (var(--visual-pad) * 2)))}.footer-grid{display:grid;grid-template-columns:minmax(320px,1.2fr) minmax(150px,.7fr) minmax(120px,.55fr) minmax(190px,.75fr) minmax(210px,.8fr) minmax(260px,1fr);gap:clamp(24px,3.4vw,48px);align-items:start}.footer h3{font-family:var(--font-sans);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 18px}.footer a{display:block;color:rgba(255,255,255,.86);margin:7px 0}.footer a:hover{color:#fff}.footer p{margin:12px 0 0}.footer-brand-large{max-width:340px}.footer-brand-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0 0 22px;color:#fff}.footer-submark{width:118px;height:118px;object-fit:contain;filter:drop-shadow(0 14px 38px rgba(0,0,0,.20))}.footer-wordmark{display:flex;flex-direction:column;text-transform:uppercase;line-height:1}.footer-wordmark strong{font-family:var(--font-serif);font-size:43px;font-weight:600;letter-spacing:.28em;color:#fff}.footer-wordmark span{font-size:10px;font-weight:800;color:var(--gold);letter-spacing:.28em;margin-top:9px}.footer-brand p{font-size:15px;line-height:1.7;color:rgba(255,255,255,.74);max-width:330px}.social-links{display:flex;gap:10px;margin-top:20px}.social-links a{display:inline;margin:0}.footer-column a,.footer-column p{font-size:15px;line-height:1.55}.footer-contact-simple p a{word-break:break-word}.footer-quote-link{display:inline-flex!important;align-items:center;gap:9px;width:max-content;margin-top:18px!important;padding:11px 16px;border-radius:999px;background:rgba(251,246,238,.08);border:1px solid rgba(200,161,90,.35);color:#fff!important;font-weight:800;font-size:13px!important}.footer-quote-link span{color:var(--gold)}.footer-art{align-self:end;min-height:230px;display:flex;align-items:flex-end;justify-content:flex-end;margin-top:-18px;opacity:.98}.footer-art svg{width:min(360px,100%);height:auto;filter:drop-shadow(0 24px 55px rgba(0,0,0,.16))}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:48px;padding-top:22px;display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:12px;color:rgba(255,255,255,.62)}.footer-bottom a{margin-left:auto;margin-top:0;color:#fff;font-weight:800}
.floating-quote{position:fixed;right:24px;bottom:24px;z-index:45;background:var(--evergreen);color:#fff;border-radius:999px;padding:13px 19px;font-size:13px;font-weight:800;box-shadow:0 18px 44px rgba(18,53,45,.24);transform:translateY(120px);transition:transform .35s ease}.floating-quote.visible{transform:translateY(0)}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease;transition-delay:var(--delay,0ms)}.reveal.in-view{opacity:1;transform:translateY(0)}.load-in{transition-delay:.16s}
@keyframes heroDrift{from{transform:scale(1.08)}to{transform:scale(1.01)}}

@keyframes menuReveal{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}

@media (max-width: 980px){
  .container,.site-header .nav-wrap,.services-preview>.container,.interactive-section>.container,.quote-section>.container{width:min(100% - 32px, 760px)}
  .nav-wrap{height:72px;grid-template-columns:auto auto}.brand-text strong{font-size:24px}.nav-links{position:absolute;top:calc(100% + 12px);left:auto;right:0;width:min(300px,calc(100vw - 32px));background:rgba(251,246,238,.98);border:1px solid rgba(18,53,45,.12);border-radius:24px;box-shadow:0 22px 62px rgba(18,53,45,.18);padding:18px 22px;display:none;flex-direction:column;align-items:stretch;gap:2px;z-index:80;backdrop-filter:blur(14px);transform-origin:top right}.nav-links.open{display:flex;animation:menuReveal .18s ease-out}.nav-links a{padding:12px 2px;border-bottom:1px solid rgba(18,53,45,.08)}.nav-links a:last-child{border-bottom:0}.nav-cta{display:none}.menu-toggle{display:flex;position:relative;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;background:rgba(251,246,238,.48);border:1px solid rgba(18,53,45,.10)}.menu-toggle span{position:absolute;left:10px;right:10px;top:17px;width:auto;height:2px;margin:0;background:var(--evergreen);border-radius:99px}.menu-toggle span:last-child{top:25px}.menu-toggle.open span:first-child{top:21px;transform:rotate(45deg)}.menu-toggle.open span:last-child{top:21px;transform:rotate(-45deg)}
  .hero{min-height:auto;padding:120px 0 60px}.hero-content{width:min(100% - 32px,760px);padding:0;min-height:auto}.hero-intro{max-width:100%;margin-left:0;padding-top:0}.hero-lower{grid-template-columns:1fr;gap:22px;margin-left:0}.hero-copy{padding:40px 0 0}.service-area{margin-top:18px}.hero h1{font-size:clamp(58px,15vw,90px);line-height:1.02}.trust-card{grid-column:1;grid-row:auto;grid-template-columns:repeat(2,1fr);margin:0;justify-self:stretch;width:100%}.lead{font-size:18px}.section{padding:82px 0}.section-head{grid-template-columns:1fr}.service-card-row{grid-template-columns:repeat(2,1fr)}.detail-grid,.process-grid,.quote-grid,.two-col,.contact-grid{grid-template-columns:1fr;gap:42px}.section-sticky{position:static}.detail-grid{gap:42px}.garden-reveal{height:360px}.trust-strip-grid{grid-template-columns:repeat(2,1fr)}.icon-grid{grid-template-columns:repeat(2,1fr)}.values-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-brand-large{grid-column:span 3;max-width:none}.footer-art{grid-column:span 3;justify-content:center;margin-top:8px}.footer-art svg{width:min(520px,100%)}.page-hero{padding-top:132px}.collage img,.collage img:nth-child(2){height:320px;margin-top:0}.timeline-item{grid-template-columns:80px 1fr;gap:20px}.timeline-number{width:68px;height:68px}.timeline-item:before{left:34px;top:60px}.floating-quote{display:none}
}

@media (max-width: 620px){
  .brand-mark{width:32px;height:32px}.brand-mark-img{width:34px;height:34px}.brand-text strong{font-size:20px;letter-spacing:.22em}.brand-text span{font-size:8px}.hero-bg{background-position:center right}.hero-bg:after{background:linear-gradient(90deg,rgba(251,246,238,.96) 0%,rgba(251,246,238,.82) 52%,rgba(251,246,238,.38) 100%)}.hero-content{width:calc(100% - 32px)}.hero-lower{gap:20px}.hero-actions,.quote-actions{align-items:stretch}.hero-actions .btn,.quote-actions .btn{width:100%}.trust-card{grid-template-columns:1fr;padding:22px}.service-card-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.image-service-card{min-width:76%;height:310px;scroll-snap-align:start}.detail-lens{display:block;width:150px;height:150px}.garden-reveal{cursor:grab;min-height:320px}.garden-reveal:active{cursor:grabbing}.reveal-label{font-size:12px}.icon-grid,.trust-strip-grid,.footer-grid,.mini-list,.collage{grid-template-columns:1fr}.footer .container{width:calc(100% - 32px)}.footer-brand-large{grid-column:auto}.footer-brand-lockup{gap:12px}.footer-submark{width:86px;height:86px}.footer-wordmark strong{font-size:31px}.footer-wordmark span{font-size:8px}.footer-art{grid-column:auto;justify-content:flex-start;min-height:160px;margin-top:6px}.footer-art svg{width:min(330px,100%)}.service-panel{padding:28px}.timeline-item{grid-template-columns:1fr}.timeline-item:before{display:none}.timeline-number{width:62px;height:62px}.contact-panel,.contact-details,.quote-card{padding:30px}.footer-bottom{display:block}.footer-bottom span,.footer-bottom a{display:block;margin:8px 0}h2{font-size:clamp(42px,12vw,62px)}.page-hero h1{font-size:clamp(52px,14vw,76px)}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}.hero-bg{animation:none!important}.floating-quote{transition:none!important}
}


/* Footer Stage 1.1 — premium brand footer */
.footer-premium{position:relative;overflow:hidden;padding:0;background:linear-gradient(180deg,#12352D 0%,#0b2b25 100%);color:rgba(251,246,238,.78)}
.footer-premium .container{width:min(1480px,calc(100% - (var(--visual-pad) * 2)))}
.footer-premium a{color:rgba(251,246,238,.88);text-decoration:none}.footer-premium a:hover{color:#fff}
.footer-trust-band{position:relative;z-index:3;padding:clamp(34px,4vw,54px) 0;background:radial-gradient(circle at 50% 0%,rgba(200,161,90,.12),transparent 36%),linear-gradient(180deg,#12352D 0%,#0e332c 100%);border-bottom:1px solid rgba(251,246,238,.08)}
.footer-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:center}
.footer-trust-item{display:grid;grid-template-columns:74px 1fr;gap:18px;align-items:center;padding:0 clamp(18px,2.2vw,36px);border-right:1px solid rgba(251,246,238,.18)}
.footer-trust-item:first-child{padding-left:0}.footer-trust-item:last-child{border-right:0;padding-right:0}
.footer-trust-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(200,161,90,.86);color:var(--gold);background:rgba(251,246,238,.025)}
.footer-trust-icon svg{width:39px;height:39px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.footer-trust-icon svg circle:first-child{stroke-width:1.2;opacity:.95}
.footer-trust-item strong{display:block;font-family:var(--font-serif);font-size:19px;line-height:1.15;color:#fff;font-weight:700;letter-spacing:-.01em;margin-bottom:8px}
.footer-trust-item em{display:block;font-style:normal;font-size:14px;line-height:1.55;color:rgba(251,246,238,.67)}
.footer-main{position:relative;z-index:2;isolation:isolate;overflow:hidden;min-height:520px;padding:clamp(64px,6.8vw,104px) 0 clamp(48px,5vw,72px);background:radial-gradient(circle at 76% 70%,rgba(200,161,90,.15),transparent 32%),radial-gradient(circle at 45% 70%,rgba(125,140,107,.12),transparent 36%),linear-gradient(180deg,#103b33 0%,#0d3029 100%)}
.footer-main-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(300px,1.45fr) minmax(190px,.9fr) minmax(135px,.62fr) minmax(145px,.68fr) minmax(270px,1fr);gap:clamp(30px,4.2vw,78px);align-items:start}.footer-brand-large{max-width:380px}.footer-logo-lockup{display:inline-flex!important;flex-direction:column;align-items:flex-start;gap:20px;margin:0 0 22px!important;color:#fff}.footer-submark-frame{display:block;width:162px;height:162px}.footer-submark{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 34px rgba(0,0,0,.24)) saturate(1.05) contrast(1.08)}
.footer-wordmark{display:flex;flex-direction:column;text-transform:uppercase;line-height:1}.footer-wordmark strong{font-family:var(--font-serif);font-size:clamp(50px,4.8vw,78px);font-weight:600;letter-spacing:.34em;color:#fff;text-shadow:0 8px 30px rgba(0,0,0,.16)}
.footer-wordmark i{width:100%;height:1px;background:linear-gradient(90deg,var(--gold),rgba(200,161,90,.3));margin:14px 0 12px;position:relative}.footer-wordmark i:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;background:var(--gold);transform:translate(-50%,-50%) rotate(45deg)}
.footer-wordmark span{font-family:var(--font-sans);font-size:11px;font-weight:800;color:var(--gold);letter-spacing:.38em}.footer-brand-large p{font-size:17px;line-height:1.65;color:rgba(251,246,238,.76);max-width:360px;margin:22px 0 0}
.footer-social-links{display:flex;align-items:center;gap:16px;margin-top:27px}.footer-social-links a,.footer-social-item{display:inline-flex!important;align-items:center;gap:9px;margin:0!important;color:var(--gold)!important;font-family:var(--font-serif);font-size:18px;line-height:1}.footer-social-links svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.footer-social-item svg{fill:currentColor;stroke:none}.footer-social-divider{width:1px;height:22px;background:rgba(200,161,90,.45)}.footer-social-muted{opacity:.82}
.footer-column{position:relative;z-index:4}.footer-column h3{font-family:var(--font-sans);font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);margin:0 0 24px}.footer-column a{display:block;margin:0 0 12px;font-family:var(--font-serif);font-size:20px;line-height:1.24;color:rgba(251,246,238,.86)}.footer-column p{margin:0;font-family:var(--font-serif);font-size:20px;line-height:1.42;color:rgba(251,246,238,.82)}.footer-quote-text{display:inline-flex!important;align-items:center;gap:16px;color:#fff!important}.footer-quote-text span{color:var(--gold);font-family:var(--font-sans)}
.footer-links-art{position:absolute;right:-22px;bottom:-4px;z-index:1;width:min(990px,62vw);height:auto;pointer-events:none;opacity:.96;mix-blend-mode:normal}.footer-links-art svg{width:100%;height:auto;display:block;filter:drop-shadow(0 32px 80px rgba(0,0,0,.22))}.footer-main:after{content:"";position:absolute;inset:auto 0 0 0;height:42%;z-index:2;background:linear-gradient(0deg,rgba(7,32,27,.35),rgba(7,32,27,0));pointer-events:none}.footer-bottom-wrap{position:relative;z-index:4;background:linear-gradient(180deg,#0d3029 0%,#0a2823 100%);border-top:1px solid rgba(251,246,238,.12)}.footer-bottom{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 0;color:rgba(251,246,238,.64);font-size:13px}.footer-bottom-notes{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.footer-bottom-cta{display:inline-flex!important;align-items:center;justify-content:center;gap:16px;margin:0!important;padding:13px 28px;border-radius:999px;border:1px solid rgba(200,161,90,.86);color:#fff!important;text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:13px;background:rgba(251,246,238,.025);box-shadow:0 18px 52px rgba(0,0,0,.13);white-space:nowrap}.footer-bottom-cta span{color:var(--gold);letter-spacing:0}.footer-bottom-cta:hover{background:rgba(251,246,238,.08);transform:translateY(-1px)}
.floating-quote.footer-hidden{transform:translateY(120px)!important}
@media (max-width:1180px){.footer-trust-grid{grid-template-columns:repeat(2,1fr);gap:28px 0}.footer-trust-item:nth-child(2){border-right:0}.footer-trust-item:nth-child(3){padding-left:0}.footer-main-grid{grid-template-columns:1.1fr .9fr .7fr}.footer-brand-large{grid-column:span 3;max-width:720px}.footer-links-art{width:min(850px,75vw);opacity:.78}.footer-location{grid-column:span 2}}
@media (max-width:760px){.footer-trust-band{padding:34px 0}.footer-trust-grid{grid-template-columns:1fr;gap:24px}.footer-trust-item{grid-template-columns:56px 1fr;padding:0!important;border-right:0;border-bottom:1px solid rgba(251,246,238,.12);padding-bottom:24px!important}.footer-trust-item:last-child{border-bottom:0;padding-bottom:0!important}.footer-trust-icon{width:50px;height:50px}.footer-trust-icon svg{width:31px;height:31px}.footer-main{min-height:auto;padding:58px 0 36px}.footer-main-grid{grid-template-columns:1fr;gap:34px}.footer-brand-large{grid-column:auto}.footer-submark-frame{width:118px;height:118px}.footer-wordmark strong{font-size:46px;letter-spacing:.29em}.footer-wordmark span{font-size:9px;letter-spacing:.28em}.footer-brand-large p{font-size:16px}.footer-column h3{margin-bottom:14px}.footer-column a,.footer-column p{font-size:18px}.footer-links-art{position:relative;right:auto;bottom:auto;width:110%;margin:8px -8% -32px auto;opacity:.55;z-index:1}.footer-bottom{display:grid;gap:22px;align-items:start}.footer-bottom-notes{display:grid;gap:9px}.footer-bottom-cta{width:max-content;max-width:100%;padding:12px 21px;font-size:12px}}
@media (max-width:420px){.footer-premium .container{width:calc(100% - 32px)}.footer-wordmark strong{font-size:38px}.footer-submark-frame{width:104px;height:104px}.footer-social-links{gap:12px;flex-wrap:wrap}.footer-links-art{width:126%;margin-left:-18%;opacity:.48}.footer-bottom-cta{width:100%}}


/* Footer Stage 1.2 — cleaned footer with full transparent logo */
.footer-main-grid{
  grid-template-columns:minmax(320px,.95fr) minmax(220px,.48fr) minmax(150px,.34fr) minmax(300px,1fr);
  gap:clamp(34px,4.6vw,86px);
}
.footer-brand-large{max-width:390px}
.footer-logo-lockup{display:inline-flex!important;flex-direction:column;align-items:flex-start;margin:0 0 16px!important;color:#fff}
.footer-full-logo{
  width:min(314px,100%);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 22px 44px rgba(0,0,0,.24)) saturate(1.04) contrast(1.05);
}
.footer-brand-large p{margin-top:12px;max-width:350px}
.footer-contact-simple,.footer-location{display:none!important}

@media (max-width:1180px){
  .footer-main-grid{grid-template-columns:1.05fr .72fr .5fr;gap:clamp(28px,4vw,64px)}
  .footer-brand-large{grid-column:auto;max-width:430px}
  .footer-links-art{width:min(800px,72vw);opacity:.64}
}
@media (max-width:760px){
  .footer-main-grid{grid-template-columns:1fr;gap:34px}
  .footer-brand-large{grid-column:auto;max-width:390px}
  .footer-full-logo{width:min(260px,100%)}
  .footer-brand-large p{max-width:330px}
}
@media (max-width:420px){
  .footer-full-logo{width:min(226px,100%)}
}

/* Footer Stage 1.3 — realistic coastal course artwork */
.footer-trust-band{
  padding:clamp(31px,3.65vw,50px) 0;
}
.footer-trust-item{
  grid-template-columns:68px 1fr;
  gap:16px;
}
.footer-trust-icon{
  width:56px;
  height:56px;
}
.footer-trust-icon svg{
  width:35px;
  height:35px;
}
.footer-main{
  min-height:520px;
  padding:clamp(58px,6.25vw,96px) 0 clamp(44px,5vw,72px);
}
.footer-main-grid{
  grid-template-columns:minmax(320px,.95fr) minmax(230px,.48fr) minmax(160px,.34fr) minmax(420px,1fr);
  gap:clamp(34px,4.6vw,86px);
}
.footer-course-art{
  position:absolute;
  right:-64px;
  bottom:-8px;
  z-index:1;
  width:min(1260px,74vw);
  height:auto;
  pointer-events:none;
  opacity:.94;
  mix-blend-mode:normal;
}
.footer-course-art img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  filter:saturate(.84) brightness(.68) contrast(1.08);
}
.footer-course-art::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(13,48,41,.72) 0%,rgba(13,48,41,.36) 18%,rgba(13,48,41,0) 42%),
    linear-gradient(180deg,rgba(13,48,41,.22) 0%,rgba(13,48,41,0) 38%,rgba(7,32,27,.12) 100%);
}
.footer-main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(13,48,41,.70) 0%,rgba(13,48,41,.48) 33%,rgba(13,48,41,.12) 63%,rgba(13,48,41,0) 100%);
}
.footer-main-grid{z-index:4}
.footer-main:after{z-index:3}

@media (max-width:1180px){
  .footer-trust-band{padding:clamp(29px,3.5vw,44px) 0}
  .footer-trust-item{grid-template-columns:62px 1fr;gap:14px}
  .footer-trust-icon{width:52px;height:52px}
  .footer-trust-icon svg{width:32px;height:32px}
  .footer-main-grid{grid-template-columns:1.05fr .72fr .5fr;gap:clamp(28px,4vw,64px)}
  .footer-course-art{width:min(980px,86vw);right:-96px;bottom:6px;opacity:.70}
  .footer-course-art::after{background:linear-gradient(90deg,rgba(13,48,41,.82) 0%,rgba(13,48,41,.48) 34%,rgba(13,48,41,0) 74%)}
}
@media (max-width:760px){
  .footer-trust-band{padding:31px 0}
  .footer-trust-grid{gap:20px}
  .footer-trust-item{grid-template-columns:52px 1fr;padding-bottom:20px!important}
  .footer-trust-item:last-child{padding-bottom:0!important}
  .footer-trust-icon{width:48px;height:48px}
  .footer-trust-icon svg{width:30px;height:30px}
  .footer-main{padding:54px 0 34px}
  .footer-main-grid{grid-template-columns:1fr;gap:34px}
  .footer-course-art{position:relative;right:auto;bottom:auto;width:130%;margin:6px -22% -28px auto;opacity:.44;z-index:1}
  .footer-course-art img{filter:saturate(.76) brightness(.58) contrast(1.08)}
  .footer-main::before{background:linear-gradient(180deg,rgba(13,48,41,.86) 0%,rgba(13,48,41,.72) 56%,rgba(13,48,41,.34) 100%)}
}
@media (max-width:420px){
  .footer-course-art{width:150%;margin-left:-34%;opacity:.38}
}


/* Footer Stage 1.4 — refined integrated coastal footer */
.footer-contact-simple,.footer-location{display:none!important}
.footer-trust-band{padding:clamp(30px,3.35vw,46px) 0}
.footer-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:center}
.footer-trust-item{grid-template-columns:64px 1fr;gap:16px;padding:0 clamp(16px,2vw,34px)}
.footer-trust-icon{width:54px;height:54px}
.footer-trust-icon svg{width:33px;height:33px}
.footer-main{position:relative;overflow:hidden;min-height:560px;padding:clamp(58px,6.2vw,96px) 0 clamp(40px,4.6vw,68px);background:radial-gradient(circle at 82% 72%,rgba(200,161,90,.14),transparent 28%),radial-gradient(circle at 48% 62%,rgba(125,140,107,.08),transparent 34%),linear-gradient(180deg,#103b33 0%,#0c2f28 100%)}
.footer-main-grid{position:relative;z-index:4;display:grid;grid-template-columns:minmax(320px,380px) minmax(230px,250px) minmax(170px,190px);gap:clamp(34px,4vw,78px);align-items:start}
.footer-brand-large{max-width:380px}
.footer-logo-lockup{margin:0 0 18px!important}
.footer-full-logo{width:min(314px,100%);height:auto;object-fit:contain;filter:drop-shadow(0 22px 44px rgba(0,0,0,.24)) saturate(1.05) contrast(1.05)}
.footer-brand-large p{margin-top:16px;max-width:360px}
.footer-links-art svg{display:none}
.footer-links-art.footer-course-art{position:absolute;right:-118px;bottom:-14px;z-index:1;width:min(1540px,92vw);height:auto;pointer-events:none;opacity:.96;mix-blend-mode:normal}
.footer-links-art.footer-course-art img{display:block;width:100%;height:auto;object-fit:contain;filter:saturate(.92) brightness(.74) contrast(1.08) drop-shadow(0 30px 70px rgba(0,0,0,.16))}
.footer-links-art.footer-course-art::before{content:"";position:absolute;inset:-9% -2% -2% -16%;pointer-events:none;background:linear-gradient(90deg,#0d3029 0%,rgba(13,48,41,.98) 8%,rgba(13,48,41,.84) 18%,rgba(13,48,41,.44) 30%,rgba(13,48,41,0) 42%),linear-gradient(180deg,rgba(13,48,41,.56) 0%,rgba(13,48,41,.20) 16%,rgba(13,48,41,0) 34%,rgba(13,48,41,0) 78%,rgba(10,40,35,.24) 100%)}
.footer-links-art.footer-course-art::after{content:"";position:absolute;inset:auto 0 -6px 0;height:42%;pointer-events:none;background:linear-gradient(0deg,rgba(10,40,35,.48) 0%,rgba(10,40,35,0) 82%)}
.footer-main::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(13,48,41,.88) 0%,rgba(13,48,41,.72) 18%,rgba(13,48,41,.38) 35%,rgba(13,48,41,.12) 50%,rgba(13,48,41,0) 64%)}
.footer-main::after{content:"";position:absolute;inset:auto 0 0 0;height:36%;z-index:3;background:linear-gradient(0deg,rgba(7,32,27,.40),rgba(7,32,27,0));pointer-events:none}
.footer-bottom-wrap{position:relative;z-index:5}
.footer-bottom{min-height:84px}

@media (max-width:1280px){
  .footer-main-grid{grid-template-columns:minmax(300px,360px) minmax(210px,240px) minmax(150px,180px);gap:clamp(28px,3.6vw,64px)}
  .footer-links-art.footer-course-art{width:min(1480px,96vw);right:-170px;bottom:-12px;opacity:.94}
}
@media (max-width:1180px){
  .footer-trust-band{padding:clamp(28px,3.1vw,42px) 0}
  .footer-trust-grid{grid-template-columns:repeat(2,1fr);gap:28px 0}
  .footer-trust-item{grid-template-columns:60px 1fr;gap:14px}
  .footer-trust-item:nth-child(2){border-right:0}
  .footer-trust-item:nth-child(3){padding-left:0}
  .footer-trust-icon{width:50px;height:50px}
  .footer-trust-icon svg{width:31px;height:31px}
  .footer-main{min-height:500px}
  .footer-main-grid{grid-template-columns:minmax(300px,1fr) minmax(210px,.74fr) minmax(150px,.55fr);gap:clamp(24px,3.2vw,52px)}
  .footer-links-art.footer-course-art{width:min(1380px,104vw);right:-250px;bottom:-8px;opacity:.9}
  .footer-links-art.footer-course-art::before{background:linear-gradient(90deg,#0d3029 0%,rgba(13,48,41,.98) 9%,rgba(13,48,41,.86) 20%,rgba(13,48,41,.48) 34%,rgba(13,48,41,0) 48%),linear-gradient(180deg,rgba(13,48,41,.52) 0%,rgba(13,48,41,.18) 18%,rgba(13,48,41,0) 36%,rgba(13,48,41,0) 82%,rgba(10,40,35,.22) 100%)}
}
@media (max-width:760px){
  .footer-trust-band{padding:30px 0}
  .footer-trust-grid{grid-template-columns:1fr;gap:20px}
  .footer-trust-item{grid-template-columns:52px 1fr;padding:0 0 20px!important;border-right:0;border-bottom:1px solid rgba(251,246,238,.12)}
  .footer-trust-item:last-child{padding-bottom:0!important;border-bottom:0}
  .footer-trust-item:nth-child(3){padding-left:0!important}
  .footer-trust-icon{width:48px;height:48px}
  .footer-trust-icon svg{width:30px;height:30px}
  .footer-main{min-height:auto;padding:54px 0 34px}
  .footer-main-grid{grid-template-columns:1fr;gap:34px}
  .footer-brand-large{max-width:390px}
  .footer-full-logo{width:min(260px,100%)}
  .footer-brand-large p{max-width:330px}
  .footer-links-art.footer-course-art{position:relative;right:auto;bottom:auto;width:138%;margin:14px -24% -30px auto;opacity:.52;z-index:1}
  .footer-links-art.footer-course-art img{filter:saturate(.86) brightness(.62) contrast(1.08)}
  .footer-links-art.footer-course-art::before{inset:-8% -2% -2% -12%;background:linear-gradient(180deg,rgba(13,48,41,.72) 0%,rgba(13,48,41,.34) 18%,rgba(13,48,41,0) 34%),linear-gradient(90deg,rgba(13,48,41,.46) 0%,rgba(13,48,41,.12) 18%,rgba(13,48,41,0) 38%)}
  .footer-main::before{background:linear-gradient(180deg,rgba(13,48,41,.88) 0%,rgba(13,48,41,.74) 56%,rgba(13,48,41,.34) 100%)}
}
@media (max-width:420px){
  .footer-full-logo{width:min(226px,100%)}
  .footer-links-art.footer-course-art{width:154%;margin-left:-38%;opacity:.46}
}


/* Footer Stage 1.5 — final atmospheric blend refinement */
.footer-links-art.footer-course-art{
  right:clamp(18px,4.2vw,82px);
  bottom:-18px;
  width:min(1500px,88vw);
  opacity:.98;
}
.footer-links-art.footer-course-art img{
  filter:saturate(.90) brightness(.70) contrast(1.07) drop-shadow(0 34px 76px rgba(0,0,0,.15));
}
.footer-links-art.footer-course-art::before{
  inset:-14% -5% -4% -20%;
  background:
    linear-gradient(90deg,
      #0d3029 0%,
      rgba(13,48,41,.98) 8%,
      rgba(13,48,41,.88) 18%,
      rgba(13,48,41,.58) 29%,
      rgba(13,48,41,.22) 40%,
      rgba(13,48,41,0) 52%),
    linear-gradient(180deg,
      rgba(13,48,41,.72) 0%,
      rgba(13,48,41,.46) 13%,
      rgba(13,48,41,.16) 26%,
      rgba(13,48,41,0) 42%,
      rgba(13,48,41,0) 72%,
      rgba(8,35,30,.20) 100%),
    radial-gradient(circle at 66% 28%,rgba(13,48,41,.40) 0%,rgba(13,48,41,.22) 22%,rgba(13,48,41,0) 46%);
}
.footer-links-art.footer-course-art::after{
  inset:auto 0 -10px 0;
  height:50%;
  background:
    linear-gradient(0deg,rgba(8,35,30,.54) 0%,rgba(8,35,30,.22) 48%,rgba(8,35,30,0) 88%),
    linear-gradient(90deg,rgba(13,48,41,.35) 0%,rgba(13,48,41,.10) 22%,rgba(13,48,41,0) 44%);
}
.footer-main::before{
  background:
    linear-gradient(90deg,rgba(13,48,41,.90) 0%,rgba(13,48,41,.76) 17%,rgba(13,48,41,.46) 33%,rgba(13,48,41,.18) 49%,rgba(13,48,41,0) 66%),
    linear-gradient(180deg,rgba(13,48,41,.20) 0%,rgba(13,48,41,0) 38%);
}
.footer-main::after{
  height:38%;
  background:linear-gradient(0deg,rgba(7,32,27,.43),rgba(7,32,27,0));
}

@media (max-width:1280px){
  .footer-links-art.footer-course-art{right:clamp(8px,2.6vw,46px);width:min(1420px,92vw);bottom:-14px}
}
@media (max-width:1180px){
  .footer-links-art.footer-course-art{right:-18px;width:min(1320px,98vw);bottom:-10px;opacity:.92}
  .footer-links-art.footer-course-art::before{
    background:
      linear-gradient(90deg,#0d3029 0%,rgba(13,48,41,.96) 10%,rgba(13,48,41,.78) 23%,rgba(13,48,41,.42) 38%,rgba(13,48,41,0) 55%),
      linear-gradient(180deg,rgba(13,48,41,.68) 0%,rgba(13,48,41,.36) 18%,rgba(13,48,41,0) 40%,rgba(13,48,41,0) 78%,rgba(8,35,30,.20) 100%);
  }
}
@media (max-width:760px){
  .footer-links-art.footer-course-art{position:relative;right:auto;bottom:auto;width:132%;margin:12px -17% -30px auto;opacity:.50}
  .footer-links-art.footer-course-art img{filter:saturate(.86) brightness(.60) contrast(1.06)}
  .footer-links-art.footer-course-art::before{
    inset:-10% -3% -3% -12%;
    background:
      linear-gradient(180deg,rgba(13,48,41,.78) 0%,rgba(13,48,41,.46) 16%,rgba(13,48,41,.12) 33%,rgba(13,48,41,0) 50%),
      linear-gradient(90deg,rgba(13,48,41,.58) 0%,rgba(13,48,41,.20) 18%,rgba(13,48,41,0) 42%);
  }
}
@media (max-width:420px){
  .footer-links-art.footer-course-art{width:146%;margin-left:-30%;opacity:.43}
}


/* Footer Stage 1.6 — palette and composition polish */
.footer-main{
  background:
    radial-gradient(circle at 50% -6%, rgba(200,161,90,.12) 0%, rgba(200,161,90,.05) 18%, transparent 40%),
    radial-gradient(circle at 86% 18%, rgba(200,161,90,.12) 0%, rgba(200,161,90,.06) 12%, transparent 27%),
    radial-gradient(circle at 82% 66%, rgba(167,176,138,.09) 0%, rgba(167,176,138,.04) 20%, transparent 35%),
    linear-gradient(180deg,#12352D 0%,#11352d 46%,#0f312a 100%);
}
.footer-links-art.footer-course-art{
  right:-84px;
  bottom:-16px;
  width:min(1660px, 98vw);
  opacity:.98;
}
.footer-links-art.footer-course-art img{
  filter:saturate(.97) brightness(.75) contrast(1.05) drop-shadow(0 34px 76px rgba(0,0,0,.14));
}
.footer-links-art.footer-course-art::before{
  inset:-12% -4% -3% -21%;
  background:
    linear-gradient(90deg,
      #12352D 0%,
      rgba(18,53,45,.98) 8%,
      rgba(18,53,45,.86) 18%,
      rgba(18,53,45,.54) 31%,
      rgba(18,53,45,.18) 43%,
      rgba(18,53,45,0) 55%),
    linear-gradient(180deg,
      rgba(18,53,45,.34) 0%,
      rgba(18,53,45,.14) 14%,
      rgba(18,53,45,0) 29%,
      rgba(18,53,45,0) 67%,
      rgba(18,53,45,.08) 100%),
    linear-gradient(170deg,
      rgba(236,219,178,.16) 10%,
      rgba(210,174,104,.11) 20%,
      rgba(210,174,104,.05) 28%,
      rgba(210,174,104,0) 40%),
    radial-gradient(circle at 84% 18%, rgba(200,161,90,.23) 0%, rgba(200,161,90,.11) 12%, rgba(200,161,90,0) 28%),
    radial-gradient(circle at 78% 28%, rgba(167,176,138,.12) 0%, rgba(167,176,138,0) 28%);
}
.footer-links-art.footer-course-art::after{
  inset:auto 0 -10px 0;
  height:52%;
  background:
    linear-gradient(0deg, rgba(8,35,30,.56) 0%, rgba(8,35,30,.20) 44%, rgba(8,35,30,0) 86%),
    linear-gradient(90deg, rgba(18,53,45,.18) 0%, rgba(18,53,45,.06) 20%, rgba(18,53,45,0) 44%),
    linear-gradient(180deg, rgba(232,211,164,.10) 0%, rgba(232,211,164,.04) 10%, rgba(232,211,164,0) 22%);
}
.footer-main::before{
  background:
    linear-gradient(90deg, rgba(18,53,45,.88) 0%, rgba(18,53,45,.73) 16%, rgba(18,53,45,.42) 31%, rgba(18,53,45,.12) 47%, rgba(18,53,45,0) 64%),
    linear-gradient(180deg, rgba(200,161,90,.09) 0%, rgba(200,161,90,.03) 10%, rgba(18,53,45,0) 24%),
    radial-gradient(circle at 84% 16%, rgba(200,161,90,.13) 0%, rgba(200,161,90,0) 18%);
}
.footer-main::after{
  height:40%;
  background:
    linear-gradient(0deg, rgba(7,32,27,.43), rgba(7,32,27,0)),
    linear-gradient(180deg, rgba(255,240,202,.05) 0%, rgba(255,240,202,0) 18%);
}
.footer-flag-accent{
  position:absolute;
  right:clamp(64px,6.6vw,112px);
  bottom:168px;
  width:96px;
  height:286px;
  z-index:5;
  pointer-events:none;
}
.footer-flag-pole{
  position:absolute;
  left:28px;
  top:0;
  bottom:18px;
  width:2px;
  background:linear-gradient(180deg, #d3c08e 0%, #ab9563 32%, #7c6d49 100%);
  box-shadow:0 0 0 1px rgba(10,24,19,.10);
}
.footer-flag-cloth{
  position:absolute;
  left:29px;
  top:3px;
  width:74px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#12352D;
  background:linear-gradient(180deg, #fcfbf6 0%, #f1ebdb 100%);
  border:1px solid rgba(18,53,45,.52);
  border-left:2px solid rgba(18,53,45,.68);
  border-radius:0 9px 9px 0;
  clip-path:path('M 0 0 L 68 2 Q 77 6 74 15 Q 78 23 72 34 L 0 36 Z');
  box-shadow:0 10px 18px rgba(0,0,0,.12), 0 0 20px rgba(255,247,223,.08);
}
.footer-flag-cloth strong{
  font-family:var(--font-display);
  font-size:21px;
  font-weight:600;
  letter-spacing:.02em;
  color:#12352D;
  transform:translateY(-1px);
}
.footer-flag-cloth em{
  position:relative;
  display:block;
  width:15px;
  height:8px;
}
.footer-flag-cloth em::before,
.footer-flag-cloth em::after{
  content:"";
  position:absolute;
  border:1.6px solid #C8A15A;
  border-left:0;
  border-top:0;
  border-radius:0 0 9px 9px;
}
.footer-flag-cloth em::before{
  width:8px;height:5px;left:0;top:1px;transform:rotate(18deg);
}
.footer-flag-cloth em::after{
  width:6px;height:4px;right:0;top:2px;transform:rotate(-14deg);
}
.footer-flag-hole{
  position:absolute;
  left:24px;
  bottom:12px;
  width:12px;
  height:4px;
  border-radius:50%;
  background:rgba(8,20,17,.42);
  box-shadow:0 0 0 1px rgba(232,211,164,.08);
}

@media (max-width:1280px){
  .footer-links-art.footer-course-art{right:-72px;width:min(1560px, 99vw)}
  .footer-flag-accent{right:clamp(52px,5vw,92px);bottom:162px;transform:scale(.95);transform-origin:bottom right}
}
@media (max-width:1180px){
  .footer-links-art.footer-course-art{right:-48px;width:min(1500px, 106vw);bottom:-10px;opacity:.95}
  .footer-links-art.footer-course-art::before{
    background:
      linear-gradient(90deg,#12352D 0%,rgba(18,53,45,.96) 10%,rgba(18,53,45,.78) 23%,rgba(18,53,45,.40) 38%,rgba(18,53,45,0) 56%),
      linear-gradient(180deg,rgba(18,53,45,.30) 0%,rgba(18,53,45,.12) 18%,rgba(18,53,45,0) 36%,rgba(18,53,45,0) 78%,rgba(8,35,30,.10) 100%),
      radial-gradient(circle at 84% 18%, rgba(200,161,90,.20) 0%, rgba(200,161,90,0) 24%),
      linear-gradient(170deg, rgba(236,219,178,.12) 8%, rgba(210,174,104,.08) 18%, rgba(210,174,104,0) 34%);
  }
  .footer-flag-accent{right:44px;bottom:150px;transform:scale(.88)}
}
@media (max-width:760px){
  .footer-main{
    background:
      radial-gradient(circle at 50% -6%, rgba(200,161,90,.10) 0%, transparent 34%),
      linear-gradient(180deg,#12352D 0%,#0f312a 100%);
  }
  .footer-links-art.footer-course-art{position:relative;right:auto;bottom:auto;width:136%;margin:12px -18% -30px auto;opacity:.50}
  .footer-links-art.footer-course-art img{filter:saturate(.88) brightness(.62) contrast(1.05)}
  .footer-links-art.footer-course-art::before{
    inset:-10% -3% -3% -12%;
    background:
      linear-gradient(180deg,rgba(18,53,45,.62) 0%,rgba(18,53,45,.28) 18%,rgba(18,53,45,.05) 34%,rgba(18,53,45,0) 48%),
      linear-gradient(90deg,rgba(18,53,45,.54) 0%,rgba(18,53,45,.18) 18%,rgba(18,53,45,0) 42%),
      radial-gradient(circle at 78% 18%, rgba(200,161,90,.14) 0%, rgba(200,161,90,0) 22%);
  }
  .footer-flag-accent{right:28px;bottom:104px;transform:scale(.72)}
}
@media (max-width:420px){
  .footer-links-art.footer-course-art{width:150%;margin-left:-28%;opacity:.44}
  .footer-flag-accent{right:18px;bottom:86px;transform:scale(.62)}
}


/* Footer Stage 1.7 — concept-match refinement */
.footer-flag-accent{display:none !important}
.footer-trust-band{
  background:
    radial-gradient(circle at 50% 0%, rgba(200,161,90,.12) 0%, rgba(200,161,90,.06) 18%, transparent 36%),
    linear-gradient(180deg,#12352D 0%,#0e332c 100%);
}
.footer-main{
  background:
    radial-gradient(circle at 80% 16%, rgba(200,161,90,.12) 0%, rgba(200,161,90,.07) 17%, rgba(200,161,90,0) 34%),
    radial-gradient(circle at 66% 55%, rgba(167,176,138,.06) 0%, rgba(167,176,138,0) 26%),
    radial-gradient(circle at 50% -8%, rgba(200,161,90,.08) 0%, rgba(200,161,90,0) 30%),
    linear-gradient(180deg,#12352D 0%,#0e332c 100%);
  min-height:548px;
}
.footer-main-grid{
  grid-template-columns:minmax(320px,380px) minmax(230px,250px) minmax(170px,190px);
  gap:clamp(34px,4vw,78px);
}
.footer-links-art.footer-course-art{
  right:0;
  bottom:-6px;
  width:min(1420px,84vw);
  opacity:.96;
}
.footer-links-art.footer-course-art img{
  filter:saturate(.93) brightness(.75) contrast(1.04) drop-shadow(0 28px 68px rgba(0,0,0,.15));
}
.footer-links-art.footer-course-art::before{
  content:"";
  position:absolute;
  inset:-10% -2% -2% -12%;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      #12352D 0%,
      rgba(18,53,45,.98) 8%,
      rgba(18,53,45,.84) 16%,
      rgba(18,53,45,.48) 28%,
      rgba(18,53,45,.14) 39%,
      rgba(18,53,45,0) 50%),
    linear-gradient(180deg,
      rgba(18,53,45,.18) 0%,
      rgba(18,53,45,.06) 11%,
      rgba(18,53,45,0) 24%,
      rgba(18,53,45,0) 72%,
      rgba(8,35,30,.12) 100%),
    radial-gradient(circle at 84% 18%, rgba(200,161,90,.17) 0%, rgba(200,161,90,.09) 10%, rgba(200,161,90,0) 24%),
    linear-gradient(180deg, rgba(255,244,219,.08) 0%, rgba(255,244,219,0) 10%);
}
.footer-links-art.footer-course-art::after{
  content:"";
  position:absolute;
  inset:auto 0 -8px 0;
  height:44%;
  pointer-events:none;
  background:
    linear-gradient(0deg, rgba(7,32,27,.36) 0%, rgba(7,32,27,0) 82%),
    linear-gradient(180deg, rgba(233,208,153,.08) 0%, rgba(233,208,153,.04) 14%, rgba(233,208,153,0) 30%);
}
.footer-main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(18,53,45,.80) 0%, rgba(18,53,45,.64) 15%, rgba(18,53,45,.30) 29%, rgba(18,53,45,.10) 42%, rgba(18,53,45,0) 56%),
    radial-gradient(circle at 84% 14%, rgba(200,161,90,.09) 0%, rgba(200,161,90,0) 16%);
}
.footer-main::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:34%;
  z-index:3;
  background:linear-gradient(0deg, rgba(7,32,27,.34), rgba(7,32,27,0));
  pointer-events:none;
}
@media (max-width:1380px){
  .footer-links-art.footer-course-art{width:min(1360px,86vw);right:0;bottom:-6px}
}
@media (max-width:1180px){
  .footer-main{min-height:500px}
  .footer-main-grid{grid-template-columns:minmax(300px,1fr) minmax(210px,.74fr) minmax(150px,.55fr);gap:clamp(24px,3.2vw,52px)}
  .footer-links-art.footer-course-art{width:min(1240px,92vw);right:-10px;bottom:-4px;opacity:.94}
  .footer-links-art.footer-course-art::before{
    background:
      linear-gradient(90deg,#12352D 0%,rgba(18,53,45,.97) 10%,rgba(18,53,45,.82) 20%,rgba(18,53,45,.42) 33%,rgba(18,53,45,.10) 46%,rgba(18,53,45,0) 56%),
      linear-gradient(180deg,rgba(18,53,45,.16) 0%,rgba(18,53,45,.05) 13%,rgba(18,53,45,0) 26%,rgba(18,53,45,0) 74%,rgba(8,35,30,.10) 100%),
      radial-gradient(circle at 84% 18%, rgba(200,161,90,.14) 0%, rgba(200,161,90,0) 22%);
  }
}
@media (max-width:760px){
  .footer-main{min-height:auto;padding:54px 0 34px}
  .footer-main-grid{grid-template-columns:1fr;gap:34px}
  .footer-links-art.footer-course-art{position:relative;right:auto;bottom:auto;width:138%;margin:14px -24% -30px auto;opacity:.50;z-index:1}
  .footer-links-art.footer-course-art img{filter:saturate(.86) brightness(.62) contrast(1.06)}
  .footer-links-art.footer-course-art::before{
    inset:-8% -2% -2% -12%;
    background:
      linear-gradient(180deg,rgba(18,53,45,.74) 0%,rgba(18,53,45,.34) 18%,rgba(18,53,45,0) 34%),
      linear-gradient(90deg,rgba(18,53,45,.44) 0%,rgba(18,53,45,.12) 18%,rgba(18,53,45,0) 38%),
      radial-gradient(circle at 82% 18%, rgba(200,161,90,.10) 0%, rgba(200,161,90,0) 20%);
  }
  .footer-main::before{background:linear-gradient(180deg,rgba(18,53,45,.88) 0%,rgba(18,53,45,.74) 56%,rgba(18,53,45,.34) 100%)}
}
@media (max-width:420px){
  .footer-links-art.footer-course-art{width:154%;margin-left:-38%;opacity:.46}
}


/* Footer Stage 1.8 — micro-tuned concept alignment */
.footer-flag-accent{display:none!important}
.footer-main{
  background:
    radial-gradient(circle at 82% 14%, rgba(200,161,90,.115) 0%, rgba(200,161,90,.07) 16%, rgba(200,161,90,0) 34%),
    radial-gradient(circle at 64% 58%, rgba(167,176,138,.055) 0%, rgba(167,176,138,0) 28%),
    radial-gradient(circle at 50% -6%, rgba(200,161,90,.075) 0%, rgba(200,161,90,0) 32%),
    linear-gradient(180deg,#12352D 0%,#0e332c 100%);
}
.footer-links-art.footer-course-art{
  right:-2px;
  bottom:-5px;
  width:min(1430px,85vw);
  opacity:.975;
}
.footer-links-art.footer-course-art img{
  filter:saturate(.96) brightness(.765) contrast(1.04) drop-shadow(0 30px 70px rgba(0,0,0,.14));
}
.footer-links-art.footer-course-art::before{
  inset:-10% -2% -2% -12%;
  background:
    linear-gradient(90deg,
      #12352D 0%,
      rgba(18,53,45,.98) 8%,
      rgba(18,53,45,.82) 16%,
      rgba(18,53,45,.46) 28%,
      rgba(18,53,45,.13) 39%,
      rgba(18,53,45,0) 50%),
    linear-gradient(180deg,
      rgba(18,53,45,.14) 0%,
      rgba(18,53,45,.05) 11%,
      rgba(18,53,45,0) 24%,
      rgba(18,53,45,0) 72%,
      rgba(8,35,30,.11) 100%),
    radial-gradient(circle at 84% 18%, rgba(200,161,90,.13) 0%, rgba(200,161,90,.065) 10%, rgba(200,161,90,0) 24%),
    linear-gradient(180deg, rgba(255,244,219,.06) 0%, rgba(255,244,219,0) 10%);
}
.footer-links-art.footer-course-art::after{
  inset:auto 0 -8px 0;
  height:43%;
  background:
    linear-gradient(0deg, rgba(7,32,27,.34) 0%, rgba(7,32,27,0) 82%),
    linear-gradient(180deg, rgba(233,208,153,.07) 0%, rgba(233,208,153,.035) 14%, rgba(233,208,153,0) 30%);
}
.footer-main::before{
  background:
    linear-gradient(90deg, rgba(18,53,45,.80) 0%, rgba(18,53,45,.62) 15%, rgba(18,53,45,.28) 29%, rgba(18,53,45,.09) 42%, rgba(18,53,45,0) 56%),
    radial-gradient(circle at 84% 14%, rgba(200,161,90,.08) 0%, rgba(200,161,90,0) 16%);
}
.footer-main::after{
  height:34%;
  background:linear-gradient(0deg, rgba(7,32,27,.33), rgba(7,32,27,0));
}

@media (max-width:1380px){
  .footer-links-art.footer-course-art{width:min(1370px,87vw);right:-2px;bottom:-5px}
}
@media (max-width:1180px){
  .footer-links-art.footer-course-art{width:min(1260px,94vw);right:-10px;bottom:-4px;opacity:.945}
}
@media (max-width:760px){
  .footer-links-art.footer-course-art{position:relative;right:auto;bottom:auto;width:138%;margin:14px -24% -30px auto;opacity:.50}
  .footer-links-art.footer-course-art img{filter:saturate(.86) brightness(.62) contrast(1.06)}
}
@media (max-width:420px){
  .footer-links-art.footer-course-art{width:154%;margin-left:-38%;opacity:.46}
}


/* Footer Stage 1.9 — safe flag restore, no separate overlay crop */
.footer-flag-accent{display:none!important}
.footer-links-art.footer-course-art img.footer-course-flag{display:none!important}
.footer-links-art.footer-course-art{
  right:-2px;
  bottom:-5px;
  width:min(1430px,85vw);
  opacity:.975;
}
.footer-links-art.footer-course-art img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  filter:saturate(.96) brightness(.775) contrast(1.04) drop-shadow(0 30px 70px rgba(0,0,0,.14));
}
.footer-links-art.footer-course-art::before{
  inset:-10% -2% -2% -12%;
  background:
    linear-gradient(90deg,
      #12352D 0%,
      rgba(18,53,45,.98) 8%,
      rgba(18,53,45,.82) 16%,
      rgba(18,53,45,.46) 28%,
      rgba(18,53,45,.13) 39%,
      rgba(18,53,45,0) 50%),
    linear-gradient(180deg,
      rgba(18,53,45,.08) 0%,
      rgba(18,53,45,.025) 11%,
      rgba(18,53,45,0) 24%,
      rgba(18,53,45,0) 72%,
      rgba(8,35,30,.11) 100%),
    radial-gradient(circle at 84% 18%, rgba(200,161,90,.10) 0%, rgba(200,161,90,.045) 10%, rgba(200,161,90,0) 24%);
}
.footer-main::before{
  background:
    linear-gradient(90deg, rgba(18,53,45,.80) 0%, rgba(18,53,45,.62) 15%, rgba(18,53,45,.28) 29%, rgba(18,53,45,.09) 42%, rgba(18,53,45,0) 56%),
    radial-gradient(circle at 84% 14%, rgba(200,161,90,.065) 0%, rgba(200,161,90,0) 16%);
}
.footer-links-art.footer-course-art::after{
  inset:auto 0 -8px 0;
  height:43%;
  background:
    linear-gradient(0deg, rgba(7,32,27,.33) 0%, rgba(7,32,27,0) 82%),
    linear-gradient(180deg, rgba(233,208,153,.055) 0%, rgba(233,208,153,.025) 14%, rgba(233,208,153,0) 30%);
}

@media (max-width:1180px){
  .footer-links-art.footer-course-art{width:min(1260px,94vw);right:-10px;bottom:-4px;opacity:.945}
}
@media (max-width:760px){
  .footer-links-art.footer-course-art{position:relative;right:auto;bottom:auto;width:138%;margin:14px -24% -30px auto;opacity:.50}
  .footer-links-art.footer-course-art img{filter:saturate(.86) brightness(.63) contrast(1.06)}
}
@media (max-width:420px){
  .footer-links-art.footer-course-art{width:154%;margin-left:-38%;opacity:.46}
}


/* Footer Stage 2.0 — clean finish: remove column banding, keep a simple evergreen fade */
.footer-main{
  background:
    radial-gradient(circle at 84% 20%, rgba(200,161,90,.10) 0%, rgba(200,161,90,.04) 16%, rgba(200,161,90,0) 34%),
    linear-gradient(180deg, #12352D 0%, #0F3029 100%) !important;
}
.footer-main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(circle at 84% 18%, rgba(200,161,90,.11) 0%, rgba(200,161,90,.04) 14%, rgba(200,161,90,0) 30%),
    linear-gradient(180deg, rgba(18,53,45,.02) 0%, rgba(18,53,45,0) 22%, rgba(7,32,27,.08) 100%) !important;
}
.footer-main::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:32%;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(0deg, rgba(7,32,27,.20) 0%, rgba(7,32,27,0) 82%) !important;
}
.footer-links-art.footer-course-art{
  right:18px !important;
  bottom:-6px !important;
  width:min(1375px, 85vw) !important;
  opacity:.97 !important;
}
.footer-links-art.footer-course-art img{
  width:100%;
  height:auto;
  object-fit:contain;
  filter:saturate(.94) brightness(.79) contrast(1.03) !important;
}
.footer-links-art.footer-course-art::before{
  content:"";
  position:absolute;
  inset:-4% -1% -2% -14%;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      #12352D 0%,
      rgba(18,53,45,.985) 12%,
      rgba(18,53,45,.88) 24%,
      rgba(18,53,45,.56) 36%,
      rgba(18,53,45,.18) 49%,
      rgba(18,53,45,0) 60%),
    linear-gradient(180deg,
      rgba(18,53,45,0) 0%,
      rgba(18,53,45,0) 74%,
      rgba(7,32,27,.18) 100%) !important;
}
.footer-links-art.footer-course-art::after{
  content:"";
  position:absolute;
  inset:auto 0 -4px 0;
  height:38%;
  pointer-events:none;
  background:linear-gradient(0deg, rgba(7,32,27,.24) 0%, rgba(7,32,27,0) 82%) !important;
}

@media (max-width: 1180px){
  .footer-links-art.footer-course-art{
    width:min(1280px, 92vw) !important;
    right:4px !important;
    bottom:-4px !important;
    opacity:.95 !important;
  }
}

@media (max-width: 760px){
  .footer-main{
    background:linear-gradient(180deg, #12352D 0%, #0F3029 100%) !important;
  }
  .footer-main::before{
    background:linear-gradient(180deg, rgba(18,53,45,.05) 0%, rgba(7,32,27,.10) 100%) !important;
  }
  .footer-links-art.footer-course-art{
    position:relative;
    right:auto !important;
    bottom:auto !important;
    width:136% !important;
    margin:14px -18% -28px auto !important;
    opacity:.50 !important;
  }
  .footer-links-art.footer-course-art img{
    filter:saturate(.86) brightness(.64) contrast(1.04) !important;
  }
  .footer-links-art.footer-course-art::before{
    inset:-6% -1% -2% -10%;
    background:
      linear-gradient(90deg, rgba(18,53,45,.42) 0%, rgba(18,53,45,.12) 18%, rgba(18,53,45,0) 38%),
      linear-gradient(180deg, rgba(18,53,45,.10) 0%, rgba(18,53,45,0) 18%, rgba(7,32,27,.18) 100%) !important;
  }
}

@media (max-width: 420px){
  .footer-links-art.footer-course-art{
    width:148% !important;
    margin-left:-24% !important;
    opacity:.46 !important;
  }
}


/* Footer Stage 2.1 — golf-course artwork removed */
.footer-links-art.footer-course-art{display:none!important}
.footer-main{
  min-height:auto!important;
  padding:clamp(56px,5.8vw,88px) 0 clamp(42px,4.6vw,64px)!important;
}
.footer-main-grid{
  grid-template-columns:minmax(320px,1.05fr) minmax(230px,.6fr) minmax(170px,.45fr)!important;
  gap:clamp(34px,4.6vw,78px)!important;
}
@media (max-width:1180px){
  .footer-main-grid{grid-template-columns:1.05fr .72fr .5fr!important}
}
@media (max-width:760px){
  .footer-main{padding:52px 0 34px!important}
  .footer-main-grid{grid-template-columns:1fr!important;gap:34px!important}
}


/* Footer flag image accent */
.footer-flag-image{
  position:absolute;
  right:clamp(24px,4vw,72px);
  bottom:clamp(38px,6vw,86px);
  z-index:2;
  width:clamp(72px,8vw,116px);
  pointer-events:none;
  opacity:.96;
}
.footer-flag-image img{
  display:block;
  width:100%;
  height:auto;
  filter:drop-shadow(0 18px 32px rgba(0,0,0,.22));
}
@media (max-width:1180px){
  .footer-flag-image{
    right:28px;
    bottom:42px;
    width:96px;
  }
}
@media (max-width:760px){
  .footer-flag-image{
    right:18px;
    bottom:26px;
    width:78px;
    opacity:.93;
  }
}
@media (max-width:420px){
  .footer-flag-image{
    right:14px;
    bottom:22px;
    width:66px;
  }
}


/* Footer flag refinement — larger flag with small green */
.footer-flag-image{
  right:clamp(22px,3.6vw,64px)!important;
  bottom:clamp(46px,7vw,92px)!important;
  width:clamp(148px,14vw,210px)!important;
  opacity:1!important;
  overflow:visible;
}
.footer-flag-image::before{
  content:"";
  position:absolute;
  left:-150px;
  bottom:4px;
  width:260px;
  height:84px;
  border-radius:58% 42% 52% 48% / 62% 62% 38% 38%;
  background:
    radial-gradient(circle at 30% 24%, rgba(245,239,215,.22) 0%, rgba(245,239,215,0) 24%),
    radial-gradient(circle at 58% 42%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 22%),
    linear-gradient(180deg, #A7B08A 0%, #7C906C 45%, #36584A 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 14px 28px rgba(0,0,0,.18);
  transform:rotate(-6deg);
  z-index:0;
}
.footer-flag-image::after{
  content:"";
  position:absolute;
  left:-18px;
  bottom:-2px;
  width:138px;
  height:18px;
  background:radial-gradient(ellipse at center, rgba(9,28,24,.34) 0%, rgba(9,28,24,.18) 48%, rgba(9,28,24,0) 75%);
  z-index:1;
}
.footer-flag-image img{
  position:relative;
  z-index:2;
  width:100%;
  filter:drop-shadow(0 20px 34px rgba(0,0,0,.22));
}
@media (max-width:1180px){
  .footer-flag-image{
    right:18px!important;
    bottom:48px!important;
    width:170px!important;
  }
  .footer-flag-image::before{
    left:-122px;
    width:220px;
    height:72px;
  }
}
@media (max-width:760px){
  .footer-flag-image{
    right:12px!important;
    bottom:28px!important;
    width:126px!important;
  }
  .footer-flag-image::before{
    left:-82px;
    width:164px;
    height:54px;
  }
  .footer-flag-image::after{
    left:-10px;
    width:96px;
    height:14px;
  }
}
@media (max-width:420px){
  .footer-flag-image{
    width:106px!important;
    right:8px!important;
    bottom:24px!important;
  }
  .footer-flag-image::before{
    left:-62px;
    width:132px;
    height:44px;
  }
}


/* Footer flag refinement — remove green, enlarge flag, cleaner placement */
.footer-flag-image{
  right:clamp(44px,5vw,86px)!important;
  bottom:clamp(72px,9vw,122px)!important;
  width:clamp(168px,10.8vw,228px)!important;
  opacity:1!important;
}
.footer-flag-image::before,
.footer-flag-image::after{
  display:none!important;
  content:none!important;
}
.footer-flag-image img{
  width:100%;
  height:auto;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.20));
}
@media (max-width:1180px){
  .footer-flag-image{
    right:34px!important;
    bottom:86px!important;
    width:188px!important;
  }
}
@media (max-width:760px){
  .footer-flag-image{
    right:18px!important;
    bottom:38px!important;
    width:138px!important;
  }
}
@media (max-width:420px){
  .footer-flag-image{
    right:12px!important;
    bottom:28px!important;
    width:116px!important;
  }
}


/* Footer flag placement — start below links, end at bottom of footer */
.footer-premium{overflow:hidden;}
.footer-flag-image{
  position:absolute !important;
  right:clamp(24px,3.6vw,56px) !important;
  bottom:0 !important;
  top:auto !important;
  width:auto !important;
  height:clamp(390px,38vw,520px) !important;
  z-index:6 !important;
  opacity:1 !important;
  pointer-events:none;
}
.footer-flag-image::before,
.footer-flag-image::after{
  display:none !important;
  content:none !important;
}
.footer-flag-image img{
  display:block;
  height:100% !important;
  width:auto !important;
  max-width:none !important;
  object-fit:contain;
  filter:drop-shadow(0 16px 24px rgba(0,0,0,.18));
}
@media (max-width:1180px){
  .footer-flag-image{
    right:20px !important;
    height:420px !important;
  }
}
@media (max-width:760px){
  .footer-flag-image{
    right:10px !important;
    height:260px !important;
  }
}
@media (max-width:420px){
  .footer-flag-image{
    right:6px !important;
    height:210px !important;
  }
}


/* Footer flag placement fine-tune */
.footer-flag-image{
  right:clamp(112px,9vw,176px) !important;
  z-index:3 !important;
}
@media (max-width:1180px){
  .footer-flag-image{
    right:84px !important;
  }
}
@media (max-width:760px){
  .footer-flag-image{
    right:12px !important;
    z-index:2 !important;
  }
}


/* Responsive refinement pass — laptop, desktop and mobile stability */
html,body{max-width:100%;overflow-x:hidden;}
.site-header{width:100%;}
.hero{min-height:100dvh;min-height:100svh;overflow:hidden;}
.hero-content{
  min-height:100dvh;
  min-height:100svh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:calc(82px + clamp(22px,5vh,58px))!important;
  padding-bottom:clamp(38px,7vh,72px)!important;
}
.hero-bg{background-position:center center;}
.detail-copy .btn,.detail-copy .lead{display:none;}
.detail-copy h2{max-width:780px;}
.process-page-section{border-top:1px solid var(--line);}
.about-hero + .split-feature .feature-copy p:last-of-type{margin-bottom:0;}

.services-icons-section .icon-grid.service-grid-balanced{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.services-icons-section .service-panel{
  grid-column:span 2;
  min-height:304px;
  padding:34px 36px;
  background:linear-gradient(180deg,rgba(255,255,255,.76) 0%,rgba(255,252,247,.62) 100%);
  border:1px solid rgba(18,53,45,.13);
  box-shadow:0 18px 48px rgba(18,53,45,.075);
}
.services-icons-section .service-panel:nth-child(1),
.services-icons-section .service-panel:nth-child(2),
.services-icons-section .service-panel:nth-child(6),
.services-icons-section .service-panel:nth-child(7){grid-column:span 3;}
.services-icons-section .icon-wrap{
  width:78px;
  height:78px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(251,246,238,.96) 0%,rgba(245,239,229,.86) 100%);
  border:1px solid rgba(200,161,90,.32);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 14px 28px rgba(18,53,45,.055);
}
.services-icons-section .icon-wrap svg{
  width:46px;
  height:46px;
  stroke:var(--evergreen);
  stroke-width:1.9;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.services-icons-section .service-panel h2{font-size:clamp(31px,3vw,38px);max-width:410px;}
.services-icons-section .service-panel p{font-size:16px;line-height:1.7;color:#52655f;}

@media (min-width:981px) and (max-height:850px){
  .hero{min-height:auto!important;}
  .hero-content{min-height:auto!important;padding-top:116px!important;padding-bottom:54px!important;}
  .hero h1{font-size:clamp(56px,5.2vw,82px)!important;}
  .hero .lead{font-size:17px!important;line-height:1.58!important;}
  .gold-rule{margin:20px 0 18px!important;}
  .hero-actions{margin-top:18px!important;}
  .service-area{margin-top:14px!important;}
  .trust-card{padding:20px 24px!important;gap:18px!important;}
}
@media (max-width:1180px){
  .site-header .nav-wrap{width:min(100% - 40px,1180px);gap:18px;}
  .brand-text strong{font-size:26px;letter-spacing:.24em;}
  .brand-text span{font-size:9px;letter-spacing:.23em;}
  .nav-links{gap:20px;}
  .hero-intro,.hero-lower{margin-left:0;}
  .hero-lower{grid-template-columns:minmax(0,1fr);gap:28px;}
  .trust-card{justify-self:stretch;width:100%;grid-column:1;grid-row:auto;}
}
@media (max-width:980px){
  .hero{min-height:auto!important;}
  .hero-content{min-height:auto!important;padding-top:118px!important;padding-bottom:60px!important;}
  .hero h1{font-size:clamp(54px,10vw,84px)!important;}
  .trust-card{grid-template-columns:repeat(2,minmax(0,1fr));}
  .services-icons-section .icon-grid.service-grid-balanced{grid-template-columns:repeat(2,minmax(0,1fr));}
  .services-icons-section .service-panel,
  .services-icons-section .service-panel:nth-child(1),
  .services-icons-section .service-panel:nth-child(2),
  .services-icons-section .service-panel:nth-child(6),
  .services-icons-section .service-panel:nth-child(7){grid-column:auto;}
}
@media (max-width:640px){
  :root{--page-pad:18px;--visual-pad:18px;}
  .nav-wrap{height:72px;}
  .hero-content{padding-top:104px!important;padding-bottom:48px!important;}
  .hero h1{font-size:clamp(48px,15vw,66px)!important;}
  .hero .lead{font-size:16px!important;line-height:1.6!important;}
  .trust-card{grid-template-columns:1fr;padding:22px!important;}
  .services-icons-section .icon-grid.service-grid-balanced{grid-template-columns:1fr;}
  .services-icons-section .service-panel{min-height:auto;padding:28px;}
  .page-hero{padding-top:120px!important;padding-bottom:76px!important;}
  .page-hero h1{font-size:clamp(48px,14vw,70px)!important;}
}
@media (max-width:390px){
  .brand-text strong{font-size:19px;letter-spacing:.18em;}
  .brand-text span{font-size:7px;letter-spacing:.18em;}
  .brand-mark-img{width:32px;height:32px;}
  .hero h1{font-size:44px!important;}
  .btn{width:100%;}
}


/* Process section interactive scroll restoration */
.process-scroll-section{
  position:relative;
  min-height:520svh;
  padding:0!important;
  background:
    radial-gradient(circle at 18% 16%,rgba(200,161,90,.10),transparent 30%),
    linear-gradient(180deg,var(--cream-2) 0%,var(--cream) 100%);
}
.process-scroll-inner{
  position:sticky;
  top:0;
  min-height:100svh;
  display:flex;
  align-items:center;
  padding:clamp(92px,9vh,128px) 0 clamp(72px,8vh,112px);
  overflow:hidden;
}
.process-scroll-grid{
  grid-template-columns:minmax(320px,430px) minmax(0,1fr)!important;
  gap:clamp(52px,7vw,120px)!important;
  align-items:center!important;
}
.process-scroll-copy{
  position:relative!important;
  top:auto!important;
  z-index:2;
}
.process-scroll-copy p{
  max-width:390px;
}
.process-steps{
  position:relative;
  min-height:clamp(430px,54vh,560px);
  perspective:1200px;
}
.process-steps::before{
  content:"";
  position:absolute;
  left:28px;
  top:28px;
  bottom:28px;
  width:1px;
  background:linear-gradient(180deg,rgba(200,161,90,.85),rgba(200,161,90,.18));
  opacity:.72;
  z-index:0;
}
.process-scroll-section .step-card{
  position:absolute;
  inset:0;
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(38px,4.8vw,70px);
  border-radius:34px;
  background:
    radial-gradient(circle at 94% 8%,rgba(200,161,90,.10),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.82) 0%,rgba(255,252,247,.68) 100%);
  border:1px solid rgba(18,53,45,.13);
  box-shadow:0 28px 70px rgba(18,53,45,.11);
  opacity:0!important;
  transform:translateY(54px) scale(.955) rotateX(5deg)!important;
  pointer-events:none;
  transition:opacity .48s ease,transform .56s cubic-bezier(.22,.61,.36,1),box-shadow .48s ease;
  z-index:1;
}
.process-scroll-section .step-card.is-active{
  opacity:1!important;
  transform:translateY(0) scale(1) rotateX(0)!important;
  pointer-events:auto;
  z-index:3;
  box-shadow:0 34px 82px rgba(18,53,45,.14);
}
.process-scroll-section .step-card span{
  width:64px;
  height:64px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin-bottom:22px;
  color:var(--gold);
  border:1px solid rgba(200,161,90,.58);
  background:rgba(251,246,238,.74);
  letter-spacing:.12em;
}
.process-scroll-section .step-card h3{
  font-size:clamp(42px,5vw,72px);
  line-height:.94;
  max-width:720px;
}
.process-scroll-section .step-card p{
  font-size:clamp(17px,1.45vw,21px);
  line-height:1.65;
  max-width:620px;
  margin-top:22px;
}
.process-scroll-section::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:var(--line);
}
@media (max-width:980px){
  .process-scroll-section{
    min-height:auto!important;
    padding:82px 0!important;
  }
  .process-scroll-inner{
    position:relative;
    min-height:auto;
    display:block;
    padding:0;
    overflow:visible;
  }
  .process-scroll-grid{
    grid-template-columns:1fr!important;
    gap:42px!important;
  }
  .process-steps{
    min-height:auto;
    display:grid;
    gap:18px;
    perspective:none;
  }
  .process-steps::before{display:none;}
  .process-scroll-section .step-card{
    position:relative;
    inset:auto;
    min-height:auto;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto;
    padding:30px;
    border-radius:24px;
  }
  .process-scroll-section .step-card span{
    width:52px;
    height:52px;
    margin-bottom:16px;
  }
  .process-scroll-section .step-card h3{
    font-size:34px;
  }
  .process-scroll-section .step-card p{
    font-size:16px;
    margin-top:14px;
  }
}
@media (prefers-reduced-motion:reduce){
  .process-scroll-section{min-height:auto!important;padding:92px 0!important;}
  .process-scroll-inner{position:relative;min-height:auto;padding:0;display:block;}
  .process-steps{min-height:auto;display:grid;gap:18px;}
  .process-scroll-section .step-card{position:relative;opacity:1!important;transform:none!important;pointer-events:auto;}
}


/* Process feature export — restored previous sticky card flow */
.process-preview{
  position:relative;
  min-height:auto!important;
  padding:clamp(92px,8vw,128px) 0!important;
  background:var(--cream-2);
}
.process-preview .process-grid{
  display:grid;
  grid-template-columns:minmax(0,410px) 1fr!important;
  gap:clamp(52px,6vw,84px)!important;
  align-items:start!important;
}
.process-preview .section-sticky{
  position:sticky!important;
  top:clamp(96px,12vh,132px)!important;
  align-self:start;
  z-index:2;
}
.process-preview .section-sticky p{
  color:#51645e;
  margin:28px 0;
}
.process-preview .steps-list{
  position:relative!important;
  display:grid!important;
  gap:18px!important;
  min-height:auto!important;
  perspective:none!important;
}
.process-preview .steps-list::before{
  display:none!important;
}
.process-preview .step-card{
  position:relative!important;
  inset:auto!important;
  min-height:auto!important;
  display:block!important;
  padding:28px 30px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.64)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 14px 40px rgba(18,53,45,.06)!important;
  opacity:1!important;
  transform:none!important;
  pointer-events:auto!important;
}
.process-preview .step-card span{
  display:block!important;
  width:auto!important;
  height:auto!important;
  margin:0 0 10px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--gold)!important;
  font-weight:800!important;
  letter-spacing:.18em!important;
}
.process-preview .step-card h3{
  font-size:32px!important;
  line-height:1!important;
  max-width:none!important;
}
.process-preview .step-card p{
  color:#556862!important;
  font-size:16px!important;
  line-height:1.65!important;
  max-width:none!important;
  margin:14px 0 0!important;
}
@media (max-width:980px){
  .process-preview{
    padding:82px 0!important;
  }
  .process-preview .process-grid{
    grid-template-columns:1fr!important;
    gap:42px!important;
  }
  .process-preview .section-sticky{
    position:static!important;
    top:auto!important;
  }
}
@media (max-width:560px){
  .process-preview{
    padding:64px 0!important;
  }
  .process-preview .step-card{
    padding:24px!important;
  }
  .process-preview .step-card h3{
    font-size:28px!important;
  }
}


/* Services page icon image upgrade */
.services-icons-section .icon-wrap.service-icon-graphic{
  width:98px;
  height:98px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(251,246,238,.96) 0%,rgba(245,239,229,.86) 100%);
  border:1px solid rgba(200,161,90,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 14px 28px rgba(18,53,45,.055);
  overflow:hidden;
  display:grid;
  place-items:center;
  padding:0;
}
.services-icons-section .icon-wrap.service-icon-graphic img{
  display:block;
  width:82%;
  height:82%;
  object-fit:contain;
}
@media (max-width:980px){
  .services-icons-section .icon-wrap.service-icon-graphic{
    width:92px;
    height:92px;
  }
}
@media (max-width:760px){
  .services-icons-section .icon-wrap.service-icon-graphic{
    width:84px;
    height:84px;
  }
}


/* Interactive Garden Detail — before/after photo update */
.garden-reveal{
  height:clamp(460px,48vw,590px);
  background:#12352D;
}
.garden-reveal > img{
  object-fit:cover;
  object-position:center center;
  filter:saturate(.96) brightness(.88);
}
.detail-lens{
  background-image:url('../img/interactive-garden-after.webp')!important;
  background-repeat:no-repeat;
  background-size:100% 100%;
}
@media (max-width:980px){
  .garden-reveal{
    height:clamp(420px,82vw,620px);
  }
}
@media (max-width:640px){
  .garden-reveal{
    height:520px;
  }
}
