:root{
  --color-bg:#F7F2E9;
  --color-bg-soft:#F0E7D4;
  --color-surface:#FFFDF8;
  --color-ink:#2B2620;
  --color-ink-soft:#655B4C;
  --color-ink-faint:#8C816F;
  --color-primary:#A6502F;
  --color-primary-dark:#7C3A21;
  --color-primary-tint:#F1DBC8;
  --color-secondary:#4A5C41;
  --color-secondary-dark:#333F2C;
  --color-secondary-tint:#DCE3D2;
  --color-accent:#CC9A42;
  --color-accent-tint:#F2E1B7;
  --color-border:#E4D7BE;

  --shadow-sm:0 1px 2px rgba(43,38,32,0.08);
  --shadow-md:0 10px 26px -10px rgba(43,38,32,0.2),0 3px 8px rgba(43,38,32,0.08);
  --shadow-lg:0 26px 52px -18px rgba(43,38,32,0.28),0 10px 20px rgba(43,38,32,0.1);
  --shadow-glow-primary:0 14px 34px -10px rgba(166,80,47,0.4);
  --shadow-glow-secondary:0 14px 34px -10px rgba(74,92,65,0.35);

  --radius-sm:10px;
  --radius-md:18px;
  --radius-lg:30px;
  --radius-xl:52px;
  --radius-organic:63% 37% 41% 59%/48% 42% 58% 52%;
  --radius-organic-2:38% 62% 63% 37%/41% 44% 56% 59%;

  --space-2xs:.4rem;
  --space-xs:.75rem;
  --space-sm:1.25rem;
  --space-md:2rem;
  --space-lg:3.5rem;
  --space-xl:6rem;
  --space-2xl:9rem;

  --ease:cubic-bezier(.22,1,.36,1);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Plus Jakarta Sans',sans-serif;
  background:var(--color-bg);
  color:var(--color-ink);
  line-height:1.7;
  font-size:1rem;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  position:relative;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:2000;
  pointer-events:none;
  opacity:.035;
  mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
ul{margin:0;padding:0;list-style:none;}

.display-heading{font-size:clamp(2.6rem,5vw + 1rem,5.25rem);font-weight:800;line-height:1.04;letter-spacing:-0.02em;margin:0 0 var(--space-sm);color:var(--color-ink);}
.section-heading{font-size:clamp(1.9rem,2.4vw + 1rem,3rem);font-weight:700;line-height:1.14;letter-spacing:-0.01em;margin:0 0 var(--space-sm);color:var(--color-ink);}
.big-page-heading{font-size:clamp(2.2rem,3.5vw + 1rem,3.6rem);}
.section-intro-text{font-size:1.08rem;color:var(--color-ink-soft);max-width:680px;}
.hero-lead{font-size:clamp(1.05rem,.5vw + 1rem,1.3rem);color:var(--color-ink-soft);max-width:560px;margin:0 0 var(--space-md);}
.eyebrow-tag{display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary-dark);background:var(--color-primary-tint);padding:.45rem 1rem;border-radius:100px;margin-bottom:var(--space-sm);}
.section-label{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-secondary-dark);margin-bottom:.6rem;}
.section-label.light-label{color:var(--color-accent-tint);}
.highlight-text{position:relative;color:var(--color-primary);white-space:nowrap;}
.highlight-text::after{content:"";position:absolute;left:-2%;right:-2%;bottom:.05em;height:.32em;background:var(--color-accent-tint);z-index:-1;border-radius:6px 14px 8px 16px;transform:rotate(-1deg);}


.nav-perspective{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0;perspective:1600px;}
.nav-flip-container{position:relative;transform-style:preserve-3d;transition:transform .75s var(--ease);margin:0 auto;max-width:1240px;}
.nav-flip-container.is-flipped{transform:rotateX(180deg);}
.nav-face{backface-visibility:hidden;-webkit-backface-visibility:hidden;}
.nav-face-front{position:relative;margin:1rem 1rem 0;border-radius:100px;transition:background .4s var(--ease),box-shadow .4s var(--ease),margin .4s var(--ease);}
.nav-solid .nav-face-front{background:rgba(247,242,233,.92);backdrop-filter:blur(14px);box-shadow:var(--shadow-md);}
.nav-face-back{position:absolute;bottom:0;left:0;right:0;transform:rotateX(180deg);background:var(--color-ink);border-radius:24px;margin:1rem 1rem 0;padding:2.2rem 1.6rem;box-shadow:var(--shadow-lg);min-height:320px;}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1.4rem;}
.nav-brand{display:flex;align-items:center;gap:.6rem;font-weight:800;font-size:1.15rem;color:var(--color-ink);}
.nav-logo{width:36px;height:36px;}
.nav-links-desktop{display:none;align-items:center;gap:1.8rem;}
.nav-links-desktop a{font-weight:600;font-size:.95rem;color:var(--color-ink-soft);transition:color .3s var(--ease);position:relative;}
.nav-links-desktop a:hover,.nav-links-desktop a.is-active{color:var(--color-primary);}
.nav-toggle{width:46px;height:46px;border-radius:50%;background:var(--color-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;box-shadow:var(--shadow-glow-primary);transition:transform .3s var(--ease);flex-shrink:0;}
.nav-toggle:hover{transform:scale(1.06);}
.nav-toggle span{width:18px;height:2px;background:#fff;border-radius:2px;}
.nav-close{position:absolute;top:1.4rem;right:1.4rem;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:background .3s var(--ease);}
.nav-close:hover{background:rgba(255,255,255,.2);}
.nav-links-mobile{display:flex;flex-direction:column;gap:1.1rem;align-items:flex-start;padding-top:1.4rem;}
.nav-links-mobile a{color:#F3ECDD;font-size:1.3rem;font-weight:600;}
.nav-links-mobile a:hover{color:var(--color-accent);}

@media(min-width:900px){
  .nav-links-desktop{display:flex;}
  .nav-toggle{display:none;}
}


.hero-section{position:relative;padding:9.5rem 1.5rem 5rem;overflow:hidden;min-height:92vh;display:flex;align-items:center;}
.hero-decor{position:absolute;border-radius:var(--radius-organic);filter:blur(2px);opacity:.55;z-index:0;}
.hero-decor-one{width:420px;height:420px;background:var(--color-accent-tint);top:-140px;right:-120px;}
.hero-decor-two{width:280px;height:280px;background:var(--color-secondary-tint);bottom:-80px;left:-100px;border-radius:var(--radius-organic-2);}
.hero-scribble{position:absolute;width:180px;color:var(--color-primary);opacity:.4;top:30%;left:6%;display:none;}
.hero-grid{position:relative;z-index:1;max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2.5rem;width:100%;}
.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;}
.hero-frame{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);border:8px solid var(--color-surface);}
.hero-image{width:100%;aspect-ratio:4/5;object-fit:cover;}
.hero-caption-card{margin-top:-2.2rem;margin-left:1.4rem;background:var(--color-surface);padding:1.1rem 1.4rem;border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-width:280px;display:flex;gap:.8rem;align-items:flex-start;position:relative;z-index:2;}
.hero-caption-card i{color:var(--color-accent);font-size:1.3rem;margin-top:.2rem;}
.hero-caption-card p{margin:0;font-size:.92rem;color:var(--color-ink-soft);font-weight:500;}
.hero-visual{position:relative;}

@media(min-width:960px){
  .hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:3.5rem;}
  .hero-scribble{display:block;}
}


.primary-action{
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  background:var(--color-primary);color:#fff;font-weight:700;font-size:.98rem;
  padding:1rem 1.8rem;border-radius:100px;box-shadow:var(--shadow-glow-primary);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .35s var(--ease);
  min-height:52px;
}
.primary-action:hover{transform:translateY(-3px);box-shadow:0 20px 40px -10px rgba(166,80,47,0.5);background:var(--color-primary-dark);}
.secondary-action{
  display:inline-flex;align-items:center;gap:.6rem;font-weight:700;font-size:.98rem;color:var(--color-ink);
  padding:1rem 1.6rem;border-radius:100px;border:2px solid var(--color-border);transition:all .35s var(--ease);min-height:52px;
}
.secondary-action:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);}
.secondary-action.light-action{border-color:rgba(255,255,255,.35);color:#fff;}
.secondary-action.light-action:hover{border-color:#fff;color:var(--color-accent-tint);}
.large-action{padding:1.15rem 2.2rem;font-size:1.05rem;}
.full-width-action{width:100%;}


.content-block{padding:var(--space-xl) 1.5rem;max-width:1240px;margin:0 auto;}
.intro-block{padding-top:var(--space-lg);}
.tabs-section{padding-top:var(--space-2xl);}
.comparison-block{background:var(--color-bg-soft);max-width:none;padding-top:var(--space-2xl);padding-bottom:var(--space-2xl);border-radius:0;}
.comparison-block .comparison-grid{max-width:1240px;margin:0 auto;}
.carousel-block{padding-top:var(--space-xl);}

.section-heading-wrap{max-width:760px;margin:0 auto var(--space-lg);text-align:left;}

.scroll-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.scroll-reveal.is-visible{opacity:1;transform:translateY(0);}

.intro-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center;}
.reverse-grid{direction:rtl;}
.reverse-grid > *{direction:ltr;}
.rounded-image{width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);object-fit:cover;aspect-ratio:5/4;}
@media(min-width:900px){
  .intro-grid{grid-template-columns:1.1fr .9fr;gap:4rem;}
}


.info-grid{display:grid;grid-template-columns:1fr;gap:1.6rem;}
.info-grid.five-col,.info-grid.two-col{grid-template-columns:1fr;}
@media(min-width:640px){
  .info-grid{grid-template-columns:repeat(2,1fr);}
}
@media(min-width:960px){
  .info-grid{grid-template-columns:repeat(4,1fr);}
  .info-grid.five-col{grid-template-columns:repeat(3,1fr);}
  .info-grid.two-col{grid-template-columns:repeat(2,1fr);}
}
.card-lift{
  background:var(--color-surface);border-radius:var(--radius-lg);padding:2rem 1.7rem;
  box-shadow:var(--shadow-sm);border:1px solid var(--color-border);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease);
}
.card-lift:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);}
.card-icon{width:52px;height:52px;border-radius:var(--radius-organic);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.1rem;}
.icon-tint-clay{background:var(--color-primary-tint);color:var(--color-primary-dark);}
.icon-tint-sage{background:var(--color-secondary-tint);color:var(--color-secondary-dark);}
.icon-tint-ochre{background:var(--color-accent-tint);color:#8a6519;}
.card-lift h3{margin:0 0 .5rem;font-size:1.15rem;font-weight:700;}
.card-lift p{margin:0;color:var(--color-ink-soft);font-size:.95rem;}


.tabs-wrap{margin-top:1rem;}
.tabs-nav{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:2rem;}
.tab-trigger{
  padding:.85rem 1.4rem;border-radius:100px;background:var(--color-surface);border:1.5px solid var(--color-border);
  font-weight:600;font-size:.92rem;color:var(--color-ink-soft);display:inline-flex;align-items:center;gap:.5rem;
  transition:all .35s var(--ease);min-height:44px;
}
.tab-trigger:hover{border-color:var(--color-primary);color:var(--color-primary);}
.tab-trigger.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-glow-primary);}
.tab-panel{display:none;animation:fadeUp .5s var(--ease);}
.tab-panel.is-active{display:block;}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
.tab-panel-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center;}
.tab-panel-grid.single-col{grid-template-columns:1fr;max-width:760px;}
.tab-image{width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);aspect-ratio:4/3;object-fit:cover;}
.check-list{margin-top:1.1rem;display:flex;flex-direction:column;gap:.7rem;}
.check-list li{display:flex;gap:.7rem;align-items:flex-start;color:var(--color-ink-soft);font-size:.95rem;}
.check-list i{color:var(--color-secondary);margin-top:.25rem;}
@media(min-width:860px){
  .tab-panel-grid{grid-template-columns:1fr 1fr;}
}


.comparison-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center;}
.comparison-image{position:relative;}
.comparison-badge{position:absolute;bottom:-1.2rem;left:1.4rem;background:var(--color-secondary);color:#fff;padding:.7rem 1.3rem;border-radius:100px;font-weight:700;font-size:.85rem;box-shadow:var(--shadow-glow-secondary);display:flex;align-items:center;gap:.5rem;}
@media(min-width:900px){
  .comparison-grid{grid-template-columns:1fr 1fr;gap:4rem;}
}


.movement-swiper{padding-bottom:3.4rem;}
.carousel-card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--color-border);height:100%;transition:transform .4s var(--ease);}
.carousel-card:hover{transform:translateY(-6px);}
.carousel-card img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.carousel-card h3{margin:1.2rem 1.4rem .4rem;font-size:1.1rem;}
.carousel-card p{margin:0 1.4rem 1.4rem;color:var(--color-ink-soft);font-size:.92rem;}
.swiper-pagination-bullet{background:var(--color-border);opacity:1;}
.swiper-pagination-bullet-active{background:var(--color-primary);}
.swiper-button-next,.swiper-button-prev{color:var(--color-primary);background:var(--color-surface);width:44px;height:44px;border-radius:50%;box-shadow:var(--shadow-sm);}
.swiper-button-next::after,.swiper-button-prev::after{font-size:1rem;}


.teaser-split{display:grid;grid-template-columns:1fr;gap:1.6rem;}
.teaser-card{padding:2.4rem;border-radius:var(--radius-lg);}
.teaser-card h3{font-size:1.5rem;margin:0 0 .8rem;}
.teaser-card p{color:var(--color-ink-soft);margin:0 0 1.4rem;}
.teaser-card-primary{background:var(--color-ink);color:#F3ECDD;}
.teaser-card-primary p{color:#CFC5B4;}
.teaser-card-secondary{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);}
@media(min-width:860px){.teaser-split{grid-template-columns:1fr 1fr;}}


.cta-split{display:grid;grid-template-columns:1fr;gap:2rem;background:var(--color-ink);color:#F3ECDD;border-radius:var(--radius-xl);max-width:1180px;padding:var(--space-lg) var(--space-md);}
.cta-split .section-heading{color:#fff;}
.cta-split-text p{color:#CFC5B4;max-width:520px;}
.cta-split-action{display:flex;flex-direction:column;gap:.8rem;align-items:flex-start;}
.cta-note{display:flex;align-items:center;gap:.6rem;color:#CFC5B4;font-size:.95rem;margin:0;}
.cta-note i{color:var(--color-accent);}
@media(min-width:860px){.cta-split{grid-template-columns:1.2fr .8fr;align-items:center;padding:var(--space-xl);}}


.page-hero{padding:9.5rem 1.5rem 4rem;max-width:1240px;margin:0 auto;}
.small-page-hero{padding-bottom:2.5rem;}
.page-hero-inner{max-width:720px;}


.timeline-section{display:flex;flex-direction:column;gap:var(--space-xl);}
.timeline-item{display:grid;grid-template-columns:auto 1fr;gap:1.6rem;}
.timeline-marker{width:56px;height:56px;border-radius:50%;background:var(--color-primary-tint);color:var(--color-primary-dark);display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:var(--shadow-sm);}
.timeline-content{display:grid;grid-template-columns:1fr;gap:1.6rem;}
.timeline-image .rounded-image{aspect-ratio:16/10;}
@media(min-width:860px){
  .timeline-content{grid-template-columns:1.1fr .9fr;align-items:center;}
  .reverse-item .timeline-content{direction:rtl;}
  .reverse-item .timeline-content > *{direction:ltr;}
}


.contact-grid{display:grid;grid-template-columns:1fr;gap:2rem;}
.contact-info-card,.contact-form-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:2.2rem;box-shadow:var(--shadow-md);border:1px solid var(--color-border);}
.contact-info-card h2,.contact-form-card h2{margin-top:0;font-size:1.4rem;}
.contact-info-item{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.3rem;}
.contact-info-item i{width:40px;height:40px;border-radius:50%;background:var(--color-primary-tint);color:var(--color-primary-dark);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.contact-info-item div{display:flex;flex-direction:column;}
.contact-info-item strong{font-size:.85rem;color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.06em;}
.contact-response-note{display:flex;gap:.9rem;background:var(--color-bg-soft);padding:1.2rem;border-radius:var(--radius-md);margin:1.5rem 0;}
.contact-response-note i{color:var(--color-secondary);margin-top:.2rem;}
.contact-response-note p{margin:0;font-size:.9rem;color:var(--color-ink-soft);}
.contact-map{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);}
.contact-map iframe{display:block;}

.form-row-split{display:grid;grid-template-columns:1fr;gap:1.2rem;}
.form-field{margin-bottom:1.2rem;display:flex;flex-direction:column;gap:.5rem;}
.form-field label{font-size:.88rem;font-weight:600;color:var(--color-ink-soft);}
.form-field input,.form-field textarea{
  padding:.9rem 1.1rem;border-radius:var(--radius-sm);border:1.5px solid var(--color-border);
  background:var(--color-bg);font-family:inherit;font-size:.98rem;color:var(--color-ink);
  transition:border-color .3s var(--ease),box-shadow .3s var(--ease);min-height:48px;
}
.form-field textarea{min-height:140px;resize:vertical;}
.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-tint);}
.full-span{grid-column:1/-1;}
.form-field-checkbox{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:1.6rem;font-size:.9rem;color:var(--color-ink-soft);}
.form-field-checkbox input{width:20px;height:20px;margin-top:.15rem;accent-color:var(--color-primary);flex-shrink:0;}
.form-field-checkbox a{color:var(--color-primary);font-weight:600;}
@media(min-width:760px){.form-row-split{grid-template-columns:1fr 1fr;}}


.legal-layout{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start;}
.legal-nav{display:flex;flex-direction:column;gap:.5rem;position:sticky;top:8rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.4rem;box-shadow:var(--shadow-sm);}
.legal-nav-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-faint);margin-bottom:.4rem;}
.legal-nav a{padding:.55rem .6rem;border-radius:var(--radius-sm);font-size:.9rem;color:var(--color-ink-soft);transition:all .3s var(--ease);}
.legal-nav a:hover{background:var(--color-bg-soft);color:var(--color-primary);}
.legal-content{display:flex;flex-direction:column;gap:2.2rem;}
.legal-section h2{font-size:1.3rem;margin:0 0 .8rem;}
.legal-section p{color:var(--color-ink-soft);margin:0;}
@media(min-width:900px){
  .legal-layout{grid-template-columns:280px 1fr;}
}


.thanks-section{padding:10rem 1.5rem 5rem;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:640px;margin:0 auto;min-height:80vh;}
.envelope-scene{width:220px;height:150px;position:relative;margin-bottom:2.5rem;}
.envelope{position:relative;width:100%;height:100%;}
.envelope-back{position:absolute;inset:0;background:var(--color-secondary-tint);border-radius:12px;box-shadow:var(--shadow-md);}
.envelope-letter{position:absolute;left:14%;right:14%;top:-10px;height:110px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);animation:letterSlide 2.6s var(--ease) infinite;z-index:1;}
.envelope-flap{position:absolute;top:0;left:0;width:100%;height:0;border-left:110px solid transparent;border-right:110px solid transparent;border-top:78px solid var(--color-primary-dark);transform-origin:top center;z-index:3;animation:flapOpen 2.6s var(--ease) infinite;}
.envelope-front-left{position:absolute;bottom:0;left:0;width:0;height:0;border-bottom:75px solid var(--color-primary);border-left:110px solid transparent;z-index:2;}
.envelope-front-right{position:absolute;bottom:0;right:0;width:0;height:0;border-bottom:75px solid var(--color-primary);border-right:110px solid transparent;z-index:2;}
@keyframes flapOpen{0%,15%{transform:rotateX(0deg);}45%,100%{transform:rotateX(180deg);}}
@keyframes letterSlide{0%,15%{transform:translateY(30px);opacity:0;}45%{transform:translateY(-38px);opacity:1;}80%,100%{transform:translateY(-38px);opacity:1;}}
.thanks-copy h1{margin-bottom:1rem;}
.thanks-copy p{color:var(--color-ink-soft);margin-bottom:1.8rem;}


.split-footer{background:var(--color-ink);color:#F3ECDD;padding:var(--space-xl) 1.5rem var(--space-md);margin-top:var(--space-xl);}
.split-footer{display:grid;grid-template-columns:1fr;gap:2.5rem;max-width:1240px;margin-left:auto;margin-right:auto;}
.footer-story{max-width:440px;}
.footer-story p{color:#CFC5B4;margin:1.2rem 0 1.6rem;font-size:.95rem;}
.footer-logo{width:48px;height:48px;}
.footer-links{display:grid;grid-template-columns:1fr;gap:2rem;}
.footer-column h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent-tint);margin:0 0 1rem;}
.footer-column a,.footer-column p{display:block;color:#CFC5B4;font-size:.92rem;margin-bottom:.7rem;transition:color .3s var(--ease);}
.footer-column a:hover{color:#fff;}
.footer-column i{margin-right:.5rem;color:var(--color-accent);}
.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);margin-top:1rem;padding-top:1.4rem;text-align:center;}
.footer-bottom p{margin:0;font-size:.85rem;color:#B5AB98;}
@media(min-width:860px){
  .split-footer{grid-template-columns:1fr 1.3fr;}
  .footer-links{grid-template-columns:repeat(3,1fr);}
}


.cookie-bell{position:fixed;bottom:1.6rem;right:1.6rem;z-index:1500;}
#cookieBellBtn{position:relative;width:58px;height:58px;border-radius:50%;background:var(--color-ink);color:#F3ECDD;display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:var(--shadow-lg);transition:transform .35s var(--ease);}
#cookieBellBtn:hover{transform:scale(1.08) rotate(-4deg);}
.cookie-badge{position:absolute;top:-3px;right:-3px;width:16px;height:16px;background:var(--color-accent);border-radius:50%;border:2px solid var(--color-bg);}
.cookie-badge:empty{display:none;}
.cookie-panel{
  position:fixed;bottom:0;right:0;left:0;max-width:480px;margin:0 auto 0 auto;
  background:var(--color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;
  box-shadow:var(--shadow-lg);padding:2rem;z-index:1600;transform:translateY(120%);
  transition:transform .5s var(--ease);border:1px solid var(--color-border);border-bottom:none;
  max-height:85vh;overflow-y:auto;
}
@media(min-width:540px){.cookie-panel{right:1.6rem;left:auto;border-radius:var(--radius-lg);margin-bottom:1.6rem;bottom:0;}}
.cookie-panel.is-open{transform:translateY(0);}
.cookie-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;}
.cookie-panel-header h3{margin:0;font-size:1.2rem;}
.cookie-panel-header button{width:36px;height:36px;border-radius:50%;background:var(--color-bg-soft);display:flex;align-items:center;justify-content:center;transition:background .3s var(--ease);}
.cookie-panel-header button:hover{background:var(--color-border);}
.cookie-panel p{font-size:.88rem;color:var(--color-ink-soft);margin:0 0 1.2rem;}
.cookie-panel p a{color:var(--color-primary);font-weight:600;}
.cookie-category{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 0;border-top:1px solid var(--color-border);}
.cookie-category div{display:flex;flex-direction:column;gap:.2rem;}
.cookie-category strong{font-size:.92rem;}
.cookie-category span{font-size:.8rem;color:var(--color-ink-faint);}
.toggle-switch{position:relative;width:46px;height:26px;flex-shrink:0;}
.toggle-switch input{opacity:0;width:0;height:0;}
.toggle-slider{position:absolute;inset:0;background:var(--color-border);border-radius:100px;transition:background .3s var(--ease);}
.toggle-slider::before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .3s var(--ease);box-shadow:var(--shadow-sm);}
.toggle-switch input:checked + .toggle-slider{background:var(--color-primary);}
.toggle-switch input:checked + .toggle-slider::before{transform:translateX(20px);}
.cookie-panel-actions{display:flex;gap:.8rem;margin-top:1.4rem;flex-wrap:wrap;}
.cookie-panel-actions button{flex:1;min-width:140px;}


.info-grid .card-lift{opacity:1;}

::selection{background:var(--color-accent-tint);color:var(--color-ink);}
@media(max-width:640px){
  .content-block{padding:var(--space-lg) 1.2rem;}
  .hero-section{padding:8rem 1.2rem 3.5rem;}
}