/* ===================== DIFD — shared styles ===================== */
:root{
  --red:#c12224;
  --red-deep:#7a1015;
  --ink:#1b1418;
  --ink-deep:#100b0d;
  --ink-soft:#5a4a4f;
  --gold:#bd8a3f;
  --gold-soft:#e3c48f;
  --base:#faf6f1;
  --base-alt:#f2e9df;
  --line:rgba(27,20,24,.14);
  --dot:rgba(27,20,24,.07);
  --shadow:0 20px 46px -22px rgba(27,20,24,.35);
  --font-d:'Fraunces', serif;
  --font-b:'Manrope', sans-serif;
  --ease:cubic-bezier(.22,.9,.28,1);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;max-width:100%;}
body{font-family:var(--font-b);background:var(--base);color:var(--ink);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
::selection{background:var(--red);color:var(--base);}
h1,h2,h3,h4{font-family:var(--font-d);color:var(--ink);line-height:1.08;letter-spacing:-.01em;font-weight:600;}
h2{font-size:clamp(1.9rem,3.6vw,2.8rem);}
h3{font-size:clamp(1.15rem,2vw,1.4rem);font-weight:500;}
p{color:var(--ink-soft);}
.container{max-width:1200px;margin:0 auto;padding:0 32px;}
.paper{background-color:var(--base);background-image:radial-gradient(var(--dot) 1px, transparent 1px);background-size:22px 22px;}
.paper-alt{background-color:var(--base-alt);background-image:radial-gradient(var(--dot) 1px, transparent 1px);background-size:22px 22px;}

.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.78rem;font-weight:800;color:var(--red);text-transform:uppercase;letter-spacing:.13em;margin-bottom:14px;}
.eyebrow svg{width:14px;height:14px;}

.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;border-radius:8px;font-weight:700;font-size:.94rem;transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .3s ease,color .3s ease;position:relative;}
.btn-primary{background:var(--red);color:var(--base);box-shadow:var(--shadow);overflow:hidden;}
.btn-primary::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,255,255,.25),transparent);transform:translateX(-130%);}
.btn-primary:hover::after{transform:translateX(130%);transition:transform .8s ease;}
.btn-primary:hover{transform:translateY(-3px);}
.btn-outline{border:1.5px solid var(--ink);color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:var(--base);transform:translateY(-3px);}
.btn-cream{background:var(--base);color:var(--ink-deep);}
.btn-cream:hover{transform:translateY(-3px);box-shadow:0 20px 40px -18px rgba(0,0,0,.4);}
.btn-block{width:100%;justify-content:center;}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.reveal.in-view{opacity:1;transform:translateY(0);}
.reveal-stagger>*{opacity:0;transform:translateY(24px);transition:opacity .65s var(--ease),transform .65s var(--ease);}
.reveal-stagger.in-view>*{opacity:1;transform:translateY(0);}
.reveal-stagger.in-view>*:nth-child(1){transition-delay:.04s;}
.reveal-stagger.in-view>*:nth-child(2){transition-delay:.12s;}
.reveal-stagger.in-view>*:nth-child(3){transition-delay:.2s;}
.reveal-stagger.in-view>*:nth-child(4){transition-delay:.28s;}
.reveal-stagger.in-view>*:nth-child(5){transition-delay:.36s;}
.reveal-stagger.in-view>*:nth-child(6){transition-delay:.44s;}

/* ---------- preloader (simple, clean) ---------- */
#preloader{position:fixed;inset:0;z-index:9999;background:var(--ink-deep);display:flex;align-items:center;justify-content:center;transition:opacity .6s ease,visibility .6s ease;}
#preloader img{width:64px;animation:pulseLogo 1.2s ease-in-out infinite;}
@keyframes pulseLogo{0%,100%{opacity:.5;transform:scale(.94);}50%{opacity:1;transform:scale(1);}}
body.loaded #preloader{opacity:0;visibility:hidden;}

/* ---------- header ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:900;padding:20px 0;transition:padding .4s var(--ease),background .4s var(--ease),box-shadow .4s var(--ease);background:rgba(250,246,241,0);}
header.scrolled{padding:11px 0;background:rgba(250,246,241,.92);backdrop-filter:blur(14px);box-shadow:0 12px 28px -22px rgba(27,20,24,.5);}
nav.container{display:flex;align-items:center;justify-content:space-between;gap:20px;}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--font-d);font-weight:700;font-size:1.2rem;color:var(--ink);}
.logo img{width:42px;height:42px;object-fit:contain;}
.nav-links{display:flex;align-items:center;gap:30px;font-weight:600;font-size:.92rem;}
.nav-links a{position:relative;padding:4px 0;}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--gold);transition:width .35s var(--ease);}
.nav-links a:hover::after,.nav-links a.active::after{width:100%;}
.nav-right{display:flex;align-items:center;gap:16px;}
.nav-phone{display:flex;align-items:center;gap:7px;font-weight:700;font-size:.86rem;color:var(--ink);}
.nav-phone svg{width:15px;height:15px;color:var(--red);}
.burger{display:none;flex-direction:column;gap:5px;width:26px;z-index:1300;}
.burger span{height:2px;background:var(--ink);border-radius:2px;transition:transform .3s ease,opacity .3s ease;}
.burger.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.burger.active span:nth-child(2){opacity:0;}
.burger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

.mobile-panel{position:fixed;top:0;right:0;height:100%;width:100%;background:var(--ink-deep);z-index:1200;transform:translateX(100%);transition:transform .55s var(--ease);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:22px;padding:0 40px;}
.mobile-panel.open{transform:translateX(0);}
.mobile-panel a{font-family:var(--font-d);font-size:1.9rem;color:var(--base);opacity:0;transform:translateX(18px);transition:opacity .5s ease,transform .5s ease;}
.mobile-panel.open a{opacity:1;transform:translateX(0);}
.mobile-panel.open a:nth-child(1){transition-delay:.08s;}
.mobile-panel.open a:nth-child(2){transition-delay:.15s;}
.mobile-panel.open a:nth-child(3){transition-delay:.22s;}
.mobile-panel.open a:nth-child(4){transition-delay:.29s;}
.mobile-panel.open a:nth-child(5){transition-delay:.36s;}
.mobile-panel .mp-call{margin-top:12px;font-family:var(--font-b);font-size:1rem;color:var(--gold-soft);}
body.menu-open{overflow:hidden;}

/* ---------- page header banner (about/pricing/contact) ---------- */
.page-hero{padding:170px 0 90px;text-align:center;}
.page-hero .eyebrow{justify-content:center;}
.page-hero h1{font-size:clamp(2.2rem,4.6vw,3.4rem);max-width:760px;margin:0 auto 18px;}
.page-hero p{max-width:560px;margin:0 auto;font-size:1.04rem;}

/* ---------- home hero ---------- */
#hero{padding:150px 0 90px;}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.hero-copy .tag{display:inline-flex;align-items:center;gap:9px;font-size:.8rem;font-weight:800;letter-spacing:.06em;color:var(--red);background:var(--base-alt);padding:8px 16px;border-radius:100px;margin-bottom:22px;}
.hero-copy .tag .dot{width:7px;height:7px;border-radius:50%;background:var(--red);animation:pulseDot 1.8s infinite;}
@keyframes pulseDot{0%,100%{transform:scale(1);opacity:1;}50%{transform:scale(1.6);opacity:.5;}}
.hero-copy h1{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:20px;max-width:600px;}
.hero-copy h1 em{font-style:italic;font-weight:500;color:var(--red);}
.hero-copy p.lede{font-size:1.08rem;max-width:460px;margin-bottom:34px;}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:44px;}
.hero-stats{display:flex;gap:36px;flex-wrap:wrap;}
.stat b{font-family:var(--font-d);font-size:1.9rem;color:var(--red);display:block;}
.stat span{font-size:.83rem;color:var(--ink-soft);}

.hero-art{position:relative;display:flex;align-items:center;justify-content:center;}
.hero-art .panel{position:relative;width:100%;aspect-ratio:1/1;max-width:440px;margin:0 auto;border-radius:50%;background:radial-gradient(circle at 35% 30%, var(--red-deep), var(--ink-deep) 75%);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;}
.hero-art .ring{position:absolute;inset:26px;border:1.5px dashed rgba(250,246,241,.3);border-radius:50%;animation:spin 40s linear infinite;}
.hero-art .ring2{position:absolute;inset:52px;border:1px dashed rgba(250,246,241,.18);border-radius:50%;animation:spin 60s linear infinite reverse;}
@keyframes spin{to{transform:rotate(360deg);}}
.hero-art .badge{position:relative;width:62%;background:var(--base);border-radius:50%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;box-shadow:0 20px 40px -16px rgba(0,0,0,.5);}
.hero-art .badge img{width:78%;}
.hero-art .float-tag{position:absolute;background:var(--base);padding:12px 18px;border-radius:12px;box-shadow:var(--shadow);font-weight:700;font-size:.82rem;color:var(--ink);display:flex;align-items:center;gap:9px;}
.hero-art .float-tag svg{width:18px;height:18px;color:var(--red);flex-shrink:0;}
.ft-1{top:6%;left:-4%;}
.ft-2{bottom:8%;right:-6%;}

/* ---------- marquee ---------- */
.marquee-strip{background:var(--red);transform:skewY(-1.4deg);margin:-28px 0;padding:18px 0;position:relative;z-index:5;box-shadow:0 18px 38px -26px rgba(27,20,24,.6);overflow:hidden;}
.marquee-track{display:flex;gap:48px;white-space:nowrap;width:max-content;animation:scrollx 24s linear infinite;transform:skewY(1.4deg);}
.marquee-track span{font-family:var(--font-d);font-style:italic;font-size:1.15rem;color:var(--base);display:inline-flex;align-items:center;gap:16px;}
.marquee-track span::after{content:"✂";color:var(--gold-soft);font-style:normal;font-size:.9rem;}
@keyframes scrollx{from{transform:skewY(1.4deg) translateX(0);}to{transform:skewY(1.4deg) translateX(-50%);}}

/* ---------- intro teaser (home -> about link) ---------- */
#intro{padding:120px 0;}
.intro-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;align-items:center;}
.intro-badge{width:150px;height:150px;border-radius:50%;border:2px dashed var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(-6deg);}
.intro-badge b{font-family:var(--font-d);font-size:2rem;color:var(--red);line-height:1;}
.intro-badge span{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-top:6px;}
.intro-copy p{font-size:1.02rem;max-width:600px;margin-bottom:22px;}
.intro-copy a.more{font-weight:700;color:var(--red);display:inline-flex;align-items:center;gap:8px;}
.intro-copy a.more svg{width:16px;height:16px;transition:transform .3s ease;}
.intro-copy a.more:hover svg{transform:translateX(4px);}

/* ---------- collections ---------- */
#collections{padding:110px 0 100px;}
.section-head{max-width:640px;margin-bottom:44px;}
.coll-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:34px;}
.coll-arrows{display:flex;gap:10px;}
.arrow-btn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;transition:all .3s ease;flex-shrink:0;}
.arrow-btn:hover{background:var(--ink);color:var(--base);}
.arrow-btn svg{width:17px;height:17px;}
.coll-scroll{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:24px;scrollbar-width:thin;}
.coll-scroll::-webkit-scrollbar{height:6px;}
.coll-scroll::-webkit-scrollbar-thumb{background:var(--red);border-radius:10px;}
.look-card{flex:0 0 290px;scroll-snap-align:start;border-radius:16px;padding:30px 26px;color:var(--base);position:relative;min-height:380px;display:flex;flex-direction:column;}
.look-card.c1{background:linear-gradient(160deg,var(--red-deep),var(--red));}
.look-card.c2{background:linear-gradient(160deg,#1b1418,#5a4a4f);}
.look-card.c3{background:linear-gradient(160deg,var(--red),var(--gold));}
.look-card.c4{background:linear-gradient(160deg,var(--ink-deep),var(--red-deep));}
.look-num{font-family:var(--font-d);font-size:.82rem;opacity:.75;letter-spacing:.1em;margin-bottom:12px;}
.look-card h3{color:var(--base);margin-bottom:9px;}
.look-card p.desc{color:rgba(250,246,241,.78);font-size:.88rem;margin-bottom:16px;}
.look-list{margin-top:auto;display:flex;flex-direction:column;gap:8px;}
.look-list li{font-size:.83rem;font-weight:600;display:flex;gap:8px;color:rgba(250,246,241,.92);}
.look-list li::before{content:"—";color:var(--gold-soft);}
.look-dur{margin-top:16px;display:inline-block;padding:6px 13px;background:rgba(250,246,241,.16);border-radius:100px;font-size:.72rem;font-weight:800;letter-spacing:.04em;width:fit-content;}

/* ---------- studio ---------- */
#studio{padding:110px 0;}
.studio-row{border-top:1px solid var(--line);}
.studio-item{display:grid;grid-template-columns:.8fr 1.6fr;padding:32px 0;border-bottom:1px solid var(--line);align-items:center;gap:26px;transition:background .35s ease;}
.studio-item:hover{background:var(--base-alt);}
.si-title{display:flex;align-items:center;gap:16px;}
.si-icon{width:50px;height:50px;border-radius:12px;background:var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.si-icon svg{width:22px;height:22px;color:var(--base);}
.studio-item h3{margin:0;}
.studio-item p{margin:0;max-width:520px;}

/* ---------- pricing teaser (home) ---------- */
#pricing-teaser{padding:110px 0;text-align:center;background:var(--ink-deep);color:var(--base);position:relative;overflow:hidden;}
#pricing-teaser::before{content:"";position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle, rgba(189,138,63,.18), transparent 70%);top:-140px;left:50%;transform:translateX(-50%);}
#pricing-teaser h2{color:var(--base);max-width:600px;margin:0 auto 16px;position:relative;}
#pricing-teaser p{color:rgba(250,246,241,.72);max-width:480px;margin:0 auto 34px;position:relative;}

/* ---------- testimonials ---------- */
#reviews{padding:110px 0 130px;background:var(--ink);overflow:hidden;}
#reviews .section-head p{color:rgba(250,246,241,.68);}
#reviews .eyebrow{color:var(--gold-soft);}
#reviews h2{color:var(--base);}
.rv-track{display:flex;gap:22px;width:max-content;animation:scrollx2 34s linear infinite;margin-top:40px;}
.rv-track:hover{animation-play-state:paused;}
@keyframes scrollx2{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.rv-card{width:320px;background:var(--base);border-radius:14px;padding:28px;flex-shrink:0;}
.rv-card svg{width:24px;height:24px;color:var(--gold);margin-bottom:12px;}
.rv-card p{font-size:.92rem;color:var(--ink);margin-bottom:18px;}
.rv-who{display:flex;align-items:center;gap:12px;}
.rv-avatar{width:38px;height:38px;border-radius:50%;background:var(--red);color:var(--base);display:flex;align-items:center;justify-content:center;font-family:var(--font-d);font-weight:700;flex-shrink:0;}
.rv-who b{display:block;font-size:.86rem;}
.rv-who span{font-size:.74rem;color:var(--ink-soft);}

/* ---------- CTA ---------- */
#cta{padding:110px 0;text-align:center;position:relative;overflow:hidden;background:linear-gradient(120deg,var(--red-deep),var(--red) 60%,var(--red-deep));background-size:220% 220%;animation:gradshift 12s ease infinite;color:var(--base);}
@keyframes gradshift{0%{background-position:0 50%;}50%{background-position:100% 50%;}100%{background-position:0 50%;}}
#cta::before,#cta::after{content:"";position:absolute;border-radius:50%;filter:blur(60px);opacity:.3;}
#cta::before{width:300px;height:300px;background:var(--gold);top:-100px;left:-60px;animation:blob 9s ease-in-out infinite;}
#cta::after{width:240px;height:240px;background:var(--base);bottom:-90px;right:-40px;animation:blob 11s ease-in-out infinite reverse;}
@keyframes blob{0%,100%{transform:translate(0,0);}50%{transform:translate(36px,26px);}}
#cta h2{color:var(--base);max-width:680px;margin:0 auto 16px;position:relative;}
#cta p{color:rgba(250,246,241,.8);max-width:460px;margin:0 auto 34px;position:relative;}
.btn-glow{box-shadow:0 0 0 0 rgba(230,201,141,.6);animation:glow 2.2s infinite;}
@keyframes glow{0%{box-shadow:0 0 0 0 rgba(230,201,141,.55);}70%{box-shadow:0 0 0 20px rgba(230,201,141,0);}100%{box-shadow:0 0 0 0 rgba(230,201,141,0);}}

/* ---------- ABOUT PAGE ---------- */
#story{padding:20px 0 100px;}
.story-grid{display:grid;grid-template-columns:1fr;gap:26px;max-width:760px;margin:0 auto;}
.story-grid p{font-size:1.05rem;margin-bottom:2px;}
.story-grid p:first-of-type::first-letter{font-family:var(--font-d);font-size:4.2rem;float:left;line-height:.8;padding:8px 12px 0 0;color:var(--red);font-weight:700;}

.founder-section{padding:40px 0 110px;}
.founder-wrap{max-width:820px;margin:0 auto;text-align:center;}
.founder-photo{width:220px;height:220px;border-radius:50%;overflow:hidden;margin:0 auto 26px;box-shadow:var(--shadow);border:4px solid var(--base);outline:2px solid var(--gold-soft);}
.founder-photo img{width:100%;height:100%;object-fit:cover;object-position:top center;}
.founder-wrap h3{font-size:1.6rem;margin-bottom:4px;}
.founder-wrap .role{color:var(--red);font-weight:700;font-size:.88rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px;display:block;}
.founder-wrap p.bio{max-width:600px;margin:0 auto;}
.badge-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:26px;}
.badge{display:flex;align-items:center;gap:9px;background:var(--base-alt);padding:11px 18px;border-radius:100px;font-weight:700;font-size:.82rem;color:var(--ink);}
.badge svg{width:15px;height:15px;color:var(--red);}

#mission{background:var(--ink-deep);color:var(--base);padding:100px 0;text-align:center;}
#mission .quote{font-family:var(--font-d);font-style:italic;font-weight:500;font-size:clamp(1.4rem,3vw,2.2rem);max-width:820px;margin:0 auto 20px;color:var(--base);line-height:1.35;}
#mission .who{color:var(--gold-soft);font-weight:700;font-size:.88rem;}

#stats{padding:90px 0;}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;}
.stats-grid .stat b{font-size:2.6rem;}

/* ---------- PRICING PAGE ---------- */
.fee-banner{display:flex;align-items:center;gap:12px;background:var(--base-alt);border:1px solid var(--line);border-radius:12px;padding:16px 22px;max-width:520px;margin:0 auto 50px;font-weight:700;color:var(--ink);}
.fee-banner svg{width:20px;height:20px;color:var(--red);flex-shrink:0;}
.fee-banner b{color:var(--red);}

.duration-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:50px;}
.dtab{padding:12px 22px;border-radius:100px;border:1.5px solid var(--line);font-weight:700;font-size:.88rem;color:var(--ink-soft);transition:all .3s var(--ease);background:var(--base);}
.dtab.active{background:var(--red);border-color:var(--red);color:var(--base);box-shadow:var(--shadow);}

.plan-panel{display:none;}
.plan-panel.active{display:block;animation:panelin .5s var(--ease);}
@keyframes panelin{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:translateY(0);}}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.plan-card{background:var(--base);border:1.5px solid var(--line);border-radius:16px;padding:34px 28px;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s ease;}
.plan-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);}
.plan-card.popular{background:var(--ink-deep);border-color:var(--ink-deep);color:var(--base);}
.plan-card.popular h4,.plan-card.popular .price{color:var(--base);}
.plan-card.popular p{color:rgba(250,246,241,.72);}
.plan-card.popular li{color:rgba(250,246,241,.92);}
.plan-badge{align-self:flex-start;background:var(--gold);color:var(--ink-deep);font-size:.66rem;font-weight:800;padding:5px 12px;border-radius:100px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px;}
.price{display:flex;align-items:baseline;gap:6px;font-family:var(--font-d);font-size:2.2rem;color:var(--ink);margin-bottom:4px;}
.price sup{font-size:1.1rem;}
.price span{font-family:var(--font-b);font-size:.85rem;font-weight:600;color:var(--ink-soft);}
.plan-card.popular .price span{color:rgba(250,246,241,.6);}
.plan-card h4{font-family:var(--font-b);font-weight:700;font-size:.98rem;margin-bottom:18px;color:var(--ink-soft);}
.plan-card.popular h4{color:rgba(250,246,241,.85);}
.plan-card ul{display:flex;flex-direction:column;gap:11px;margin:20px 0 26px;}
.plan-card li{display:flex;gap:9px;font-size:.9rem;font-weight:600;align-items:flex-start;color:var(--ink);}
.plan-card li svg{width:16px;height:16px;flex-shrink:0;margin-top:3px;color:var(--gold);}
.plan-note{margin-top:auto;padding-top:16px;border-top:1px dashed var(--line);font-size:.76rem;color:var(--ink-soft);text-align:center;}
.plan-card.popular .plan-note{border-color:rgba(250,246,241,.2);color:rgba(250,246,241,.55);}
.pricing-note{max-width:640px;margin:50px auto 0;text-align:center;font-size:.88rem;color:var(--ink-soft);}

/* ---------- CONTACT PAGE ---------- */
#contact-main{padding:20px 0 120px;}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.field{margin-bottom:20px;}
.field label{display:block;font-size:.8rem;font-weight:700;margin-bottom:8px;color:var(--ink-soft);}
.field input,.field textarea,.field select{width:100%;padding:14px 16px;border-radius:10px;border:1.5px solid var(--line);font-family:inherit;font-size:.94rem;background:var(--base-alt);transition:border-color .3s ease,background .3s ease;}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--red);background:var(--base);}
.info-card{background:var(--ink-deep);color:var(--base);border-radius:20px;padding:38px;height:100%;}
.info-card h3{color:var(--base);margin-bottom:16px;}
.info-row{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px;}
.info-row svg{width:19px;height:19px;color:var(--gold-soft);flex-shrink:0;margin-top:2px;}
.info-row span{font-size:.9rem;color:rgba(250,246,241,.85);}
.social-row{display:flex;gap:12px;margin-top:26px;}
.social-row a{width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(250,246,241,.3);display:flex;align-items:center;justify-content:center;transition:all .35s ease;}
.social-row a:hover{background:var(--gold-soft);border-color:var(--gold-soft);}
.social-row svg{width:17px;height:17px;color:var(--base);}
.map-box{margin-top:26px;border-radius:16px;overflow:hidden;height:220px;background:var(--base-alt);display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:.85rem;font-weight:600;border:1.5px dashed var(--line);}

/* ---------- footer ---------- */
footer{background:var(--ink-deep);color:rgba(250,246,241,.75);padding:60px 0 26px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:44px;}
.footer-grid .logo{color:var(--base);}
.footer-grid p{color:rgba(250,246,241,.6);max-width:280px;margin-top:14px;font-size:.86rem;}
.footer-grid h4{color:var(--base);font-family:var(--font-b);font-size:.84rem;margin-bottom:16px;letter-spacing:.03em;}
.footer-grid li{margin-bottom:10px;font-size:.86rem;}
.footer-grid a:hover{color:var(--gold-soft);}
.footer-bottom{border-top:1px solid rgba(250,246,241,.15);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.78rem;color:rgba(250,246,241,.5);}

/* ---------- whatsapp float ---------- */
.wa-float{position:fixed;bottom:24px;right:24px;z-index:800;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px -10px rgba(0,0,0,.4);}
.wa-float svg{width:28px;height:28px;color:#fff;}
.wa-float .ring{position:absolute;inset:-6px;border-radius:50%;border:2px solid #25D366;opacity:0;animation:wapulse 2.4s infinite;}
@keyframes wapulse{0%{opacity:.55;transform:scale(.9);}100%{opacity:0;transform:scale(1.5);}}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .hero-grid,.intro-grid,.contact-grid{grid-template-columns:1fr;}
  .hero-art{order:-1;max-width:320px;margin:0 auto 20px;}
  .intro-badge{margin:0 auto;}
  .studio-item{grid-template-columns:1fr;gap:14px;}
  .plan-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto;}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:36px;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .nav-links{display:none;}
  .burger{display:flex;}
}
@media (max-width:640px){
  .container{padding:0 22px;}
  #hero{padding:130px 0 60px;}
  .page-hero{padding:150px 0 70px;}
  #story,#collections,#studio,#pricing-teaser,#reviews,#contact-main,#cta,.founder-section,#mission,#stats,#pricing-main{padding-top:80px;padding-bottom:80px;}
  .ft-1,.ft-2{display:none;}
  .footer-grid{grid-template-columns:1fr;}
  .nav-phone span{display:none;}
  .look-card{flex:0 0 250px;}
  .founder-photo{width:170px;height:170px;}
  /* fix: header items were overflowing and squeezing the burger off small phones */
  .burger{flex-shrink:0;}
  .nav-phone{flex-shrink:0;}
  .nav-right .btn-primary{display:none;}
}

@media (prefers-reduced-motion:reduce){
  .marquee-track,.rv-track,#cta,#cta::before,#cta::after,.btn-glow,.wa-float .ring,.hero-art .ring,.hero-art .ring2,.tag .dot{animation:none !important;}
  .reveal,.reveal-stagger>*{transition:none !important;opacity:1 !important;transform:none !important;}
  #preloader{display:none !important;}
}
