/* ==========================================================================
   QISHR COFFEE HOUSE — Design System
   Palette: espresso #3B1F0E · sand #D9C4A0 · cream #F5EFE4 · gold #B8924A
            charcoal #2C2C2C · slate #7A8A8E
   Type: Cormorant Garamond (display) + Jost (body/nav)
   ========================================================================== */

:root{
  --espresso:#3B1F0E;
  --espresso-2:#2A1509;
  --sand:#D9C4A0;
  --sand-soft:#E7DAC1;
  --cream:#F5EFE4;
  --paper:#FBF8F2;
  --gold:#B8924A;
  --gold-light:#D3B57E;
  --charcoal:#2C2C2C;
  --slate:#7A8A8E;
  --line: rgba(59,31,14,0.14);
  --line-light: rgba(245,239,228,0.16);
  --shadow: 0 20px 50px rgba(42,21,9,0.16);
  --radius: 3px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--cream);
  color:var(--espresso);
  font-family:'Jost', sans-serif;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
h1,h2,h3,h4{
  font-family:'Cormorant Garamond', serif;
  font-weight:500;
  margin:0;
  line-height:1.08;
  color:var(--espresso);
}
p{margin:0;}
::selection{background:var(--gold-light); color:var(--espresso-2);}
.wrap{max-width:1180px; margin:0 auto; padding:0 32px;}
section{position:relative;}
@media(max-width:768px){.wrap{padding:0 22px;}}

/* -------- utility -------- */
.eyebrow{
  font-family:'Jost',sans-serif;
  font-size:12px;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--gold);
  font-weight:500;
  display:flex;
  align-items:center;
  gap:10px;
}
.eyebrow svg{width:15px;height:15px;flex:none;}
.center{text-align:center; margin-left:auto; margin-right:auto;}
.sec-head{max-width:640px; margin-bottom:56px;}
.sec-head h2{font-size:clamp(32px,4.2vw,52px); margin-top:14px;}
.sec-head p{font-size:16px; line-height:1.7; color:rgba(59,31,14,.7); margin-top:16px; max-width:520px; font-weight:300;}
.center .sec-head{margin-left:auto;margin-right:auto;}
.center .sec-head p{margin-left:auto;margin-right:auto;}
section.pad{padding:110px 0;}
@media(max-width:768px){section.pad{padding:72px 0;}}

.reveal{opacity:0; transform:translateY(26px); transition:opacity .75s ease, transform .75s ease;}
.reveal.in{opacity:1; transform:translateY(0);}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1; transform:none; transition:none;}
  html{scroll-behavior:auto;}
}

/* -------- buttons -------- */
.btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 28px; border-radius:var(--radius);
  font-size:12px; letter-spacing:.14em; text-transform:uppercase; font-weight:600;
  border:1px solid var(--espresso); cursor:pointer; font-family:'Jost',sans-serif;
  transition:all .3s ease; white-space:nowrap;
}
.btn-gold{background:var(--gold); color:var(--espresso-2); border-color:var(--gold);}
.btn-gold:hover{background:var(--gold-light); transform:translateY(-1px);}
.btn-outline{background:transparent; color:var(--espresso); border-color:var(--espresso);}
.btn-outline:hover{background:var(--espresso); color:var(--cream);}
.btn-outline-light{background:transparent; color:var(--paper); border-color:rgba(251,248,242,.55);}
.btn-outline-light:hover{background:var(--paper); color:var(--espresso-2);}
.btn-solid-dark{background:var(--espresso); color:var(--cream); border-color:var(--espresso);}
.btn-solid-dark:hover{background:var(--espresso-2);}
.btn-sm{padding:9px 18px; font-size:11px;}

/* -------- geometric zakharif divider -------- */
.zdivider{
  width:100%; height:14px; opacity:.55;
  background-image: repeating-linear-gradient(135deg, var(--gold) 0 2px, transparent 2px 14px),
                     repeating-linear-gradient(45deg, var(--gold) 0 2px, transparent 2px 14px);
  background-size:14px 14px;
  mask-image: linear-gradient(90deg, transparent, black 12%, black 88%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, black 12%, black 88%, transparent);
}

/* -------- medallion / starburst rosette (shared signature mark) -------- */
.rosette{color:var(--gold);}
.rosette-spin{animation:spin 70s linear infinite;}
@keyframes spin{from{transform:rotate(0);}to{transform:rotate(360deg);}}

/* -------- NAV -------- */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:300;
  display:flex; align-items:center; justify-content:space-between;
  padding:22px 40px;
  transition:background .4s ease, padding .4s ease, box-shadow .4s ease;
}
.nav.solid{
  background:rgba(245,239,228,.94); backdrop-filter:blur(10px);
  padding:14px 40px; box-shadow:0 4px 24px rgba(42,21,9,.1);
}
body.page-inner .nav{background:rgba(245,239,228,.96); padding:14px 40px; box-shadow:0 4px 24px rgba(42,21,9,.06);}
.nav-brand{display:flex; align-items:center; gap:12px;}
.nav-brand img{width:42px;height:42px;border-radius:50%; border:1px solid var(--gold-light);}
.nav-brand span{font-family:'Cormorant Garamond',serif; font-size:22px; letter-spacing:.03em; color:var(--espresso);}
.nav.dark-mode .nav-brand span,.nav.dark-mode .nav-links a{color:var(--paper);}
.nav-links{display:flex; align-items:center; gap:32px;}
.nav-links a{
  font-size:12.5px; letter-spacing:.1em; text-transform:uppercase; font-weight:500;
  color:var(--espresso); position:relative; padding-bottom:6px;
}
.nav-links a.current{color:var(--gold);}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold);transition:width .3s ease;}
.nav-links a:hover::after,.nav-links a.current::after{width:100%;}
.nav-cta{display:none;}
@media(min-width:920px){.nav-cta{display:inline-flex;}}
.nav-toggle{display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:6px;}
.nav-toggle span{width:24px;height:2px;background:var(--espresso);}
@media(max-width:919px){.nav-links{display:none;} .nav-toggle{display:flex;}}
.mobile-menu{
  position:fixed; inset:0; background:var(--cream); z-index:400;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:26px;
  transform:translateY(-100%); transition:transform .45s ease;
}
.mobile-menu.open{transform:translateY(0);}
.mobile-menu a{font-family:'Cormorant Garamond',serif; font-size:28px;}
.mobile-close{position:absolute; top:24px; right:30px; font-size:26px; background:none; border:none; cursor:pointer; color:var(--espresso);}

/* -------- breadcrumb (menu page only) -------- */
.breadcrumb{
  padding:120px 0 0; font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--slate);
}
.breadcrumb a{color:var(--gold);}

/* -------- Page hero (inner pages) -------- */
.page-hero{
  padding:160px 0 90px; background:var(--sand-soft); position:relative; overflow:hidden;
}
.page-hero .rosette-bg{position:absolute; width:420px;height:420px; opacity:.1; top:-120px; right:-100px;}
.page-hero h1{font-size:clamp(38px,5.5vw,64px); font-style:italic;}
.page-hero p{margin-top:16px; font-size:16px; color:rgba(59,31,14,.68); max-width:520px; font-weight:300;}

/* -------- HOME HERO -------- */
.hero{height:100vh; min-height:640px; position:relative; display:flex; align-items:flex-end; color:var(--paper); overflow:hidden;}
.hero-media{position:absolute; inset:0;}
.hero-media img{width:100%;height:100%;object-fit:cover; animation:slowzoom 22s ease-in-out infinite alternate;}
@keyframes slowzoom{from{transform:scale(1);}to{transform:scale(1.09);}}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(42,21,9,.18) 0%, rgba(42,21,9,.4) 55%, rgba(30,15,6,.88) 100%);}
.hero-rosette{position:absolute; top:-90px; right:-90px; width:480px; height:480px; opacity:.16; filter:drop-shadow(0 0 40px rgba(0,0,0,.15));}
@media(max-width:768px){.hero-rosette{width:320px;height:320px; top:-60px; right:-60px;}}
.hero-inner{position:relative; z-index:2; width:100%; padding-bottom:100px;}
.hero-logo{width:64px;height:64px;border-radius:50%;margin-bottom:26px;border:1px solid rgba(216,197,158,.5);}
.hero h1{font-size:clamp(44px,7vw,90px); color:var(--paper); max-width:800px; font-style:italic; font-weight:500;}
.hero .sub{font-size:18px; line-height:1.6; max-width:480px; margin-top:20px; color:rgba(251,248,242,.86); font-weight:300;}
.hero-actions{display:flex; gap:16px; margin-top:36px; flex-wrap:wrap;}
.hero-scroll{position:absolute; right:40px; bottom:40px; z-index:2; display:flex; flex-direction:column; align-items:center; gap:10px; color:var(--gold-light); font-size:11px; letter-spacing:.2em; text-transform:uppercase;}
.hero-scroll .line{width:1px; height:46px; background:linear-gradient(180deg, var(--gold-light), transparent); animation:pulseLine 2.4s ease-in-out infinite;}
@keyframes pulseLine{0%,100%{opacity:.3;}50%{opacity:1;}}

/* -------- cultural intro strip -------- */
.intro-strip{background:var(--espresso); color:var(--paper); text-align:center; padding:38px 0;}
.intro-strip p{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:clamp(17px,2vw,22px); color:var(--sand-soft); letter-spacing:.01em;}

/* -------- Signature drinks -------- */
.drink-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
@media(max-width:980px){.drink-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.drink-grid{grid-template-columns:1fr;}}
.drink-card{
  background:var(--paper); border:1px solid var(--line); overflow:hidden; position:relative;
  transition:transform .35s ease, box-shadow .35s ease;
}
.drink-card:hover{transform:translateY(-6px); box-shadow:var(--shadow);}
.drink-card .badge{
  position:absolute; top:16px; left:16px; z-index:2; background:var(--gold); color:var(--espresso-2);
  font-size:10px; letter-spacing:.12em; text-transform:uppercase; padding:6px 12px; font-weight:600;
}
.drink-card .imgwrap{height:230px; overflow:hidden;}
.drink-card img{width:100%;height:100%;object-fit:cover; transition:transform .6s ease;}
.drink-card:hover img{transform:scale(1.07);}
.drink-card-body{padding:22px 22px 26px;}
.drink-card-body h4{font-size:23px; font-style:italic;}
.drink-card-body p{font-size:13.5px; color:rgba(59,31,14,.65); margin-top:8px; line-height:1.6; font-weight:300;}
.drink-card-footer{display:flex; align-items:center; justify-content:space-between; margin-top:18px;}
.drink-price{font-size:16px; color:var(--gold); font-weight:500;}

/* -------- brand story teaser (home) -------- */
.story-teaser{background:var(--espresso); color:var(--paper);}
.story-teaser .wrap{display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center;}
@media(max-width:880px){.story-teaser .wrap{grid-template-columns:1fr; gap:40px;}}
.story-teaser img{aspect-ratio:4/5; object-fit:cover; width:100%;}
.story-teaser .eyebrow{color:var(--gold-light);}
.story-teaser h2{color:var(--paper); font-size:clamp(30px,3.6vw,44px); margin-top:14px;}
.story-teaser p{color:rgba(251,248,242,.75); font-size:16px; line-height:1.8; margin-top:20px; font-weight:300;}
.story-teaser .link{display:inline-flex; align-items:center; gap:8px; margin-top:22px; color:var(--gold-light); font-size:13px; letter-spacing:.1em; text-transform:uppercase; border-bottom:1px solid var(--gold-light); padding-bottom:4px;}

/* -------- social proof -------- */
.proof{background:var(--sand-soft);}
.proof-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
@media(max-width:900px){.proof-grid{grid-template-columns:1fr;}}
.proof-card{background:var(--paper); padding:32px 28px; border:1px solid var(--line);}
.proof-card .stars{color:var(--gold); font-size:14px; letter-spacing:2px; margin-bottom:14px;}
.proof-card p{font-size:14.5px; line-height:1.75; color:rgba(59,31,14,.8); font-weight:300;}
.proof-card .who{margin-top:16px; display:flex; align-items:center; gap:10px;}
.proof-avatar{width:34px;height:34px;border-radius:50%; background:var(--espresso); color:var(--cream); display:flex; align-items:center; justify-content:center; font-family:'Cormorant Garamond',serif; font-size:15px;}
.who-name{font-size:13px; font-weight:500;}

/* -------- location preview (home) -------- */
.loc-preview{background:var(--paper);}
.loc-preview .wrap-inner{display:grid; grid-template-columns:.9fr 1.1fr; border:1px solid var(--line);}
@media(max-width:880px){.loc-preview .wrap-inner{grid-template-columns:1fr;}}
.loc-info{padding:50px 44px; display:flex; flex-direction:column; gap:22px;}
.loc-block h4{font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); margin-bottom:8px; font-weight:600;}
.loc-block p,.loc-block a{font-size:16px; line-height:1.6; font-family:'Cormorant Garamond',serif;}
.map-frame{min-height:340px;}
.map-frame iframe{width:100%;height:100%;min-height:340px;border:0; filter:sepia(.12) saturate(.9);}

/* -------- Menu page -------- */
.menu-tabsbar{
  position:sticky; top:64px; z-index:150; background:var(--cream);
  border-bottom:1px solid var(--line); padding:14px 0;
}
body.page-inner .menu-tabsbar{top:63px;}
.menu-tabs{display:flex; gap:8px; overflow-x:auto; scrollbar-width:none;}
.menu-tabs::-webkit-scrollbar{display:none;}
.menu-tab{
  background:none; border:1px solid var(--line); border-radius:20px; cursor:pointer; padding:9px 18px;
  font-family:'Jost'; font-size:12.5px; letter-spacing:.06em; white-space:nowrap; font-weight:500; color:rgba(59,31,14,.6);
  transition:all .25s ease;
}
.menu-tab.active{background:var(--espresso); color:var(--cream); border-color:var(--espresso);}
.menu-panels{padding-top:60px;}
.menu-panel{display:none;}
.menu-panel.active{display:block; animation:fadeIn .5s ease;}
@keyframes fadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
.menu-panel-head{display:flex; align-items:baseline; justify-content:space-between; margin-bottom:34px; flex-wrap:wrap; gap:10px;}
.menu-panel-head h2{font-size:clamp(28px,3.6vw,40px); font-style:italic;}
.menu-panel-head span{font-size:13px; color:var(--slate); font-weight:300;}
.menu-item-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
@media(max-width:820px){.menu-item-grid{grid-template-columns:1fr;}}
.menu-card{
  display:flex; gap:16px; background:var(--paper); border:1px solid var(--line); padding:18px; align-items:center;
  transition:box-shadow .3s ease, transform .3s ease;
}
.menu-card:hover{box-shadow:var(--shadow); transform:translateY(-3px);}
.menu-card .photo{
  width:78px; height:78px; border-radius:50%; overflow:hidden; flex:none; border:1px solid var(--gold-light);
}
.menu-card .photo img{width:100%;height:100%;object-fit:cover;}
.menu-card .photo.placeholder{
  background:var(--sand-soft); display:flex; align-items:center; justify-content:center;
}
.menu-card .photo.placeholder svg{width:26px;height:26px; color:var(--gold);}
.menu-card-body{flex:1; min-width:0;}
.menu-card-top{display:flex; justify-content:space-between; align-items:baseline; gap:10px;}
.menu-card-top h4{font-size:18px; font-style:italic;}
.menu-card-price{font-size:15px; color:var(--gold); font-weight:500; white-space:nowrap;}
.menu-card p{font-size:13px; color:rgba(59,31,14,.62); margin-top:5px; line-height:1.55; font-weight:300;}
.menu-tags{display:flex; gap:6px; margin-top:10px; flex-wrap:wrap;}
.tag{font-size:10px; letter-spacing:.05em; text-transform:uppercase; background:var(--sand-soft); color:var(--espresso); padding:4px 9px; border-radius:20px; font-weight:500;}
.tag.signature{background:var(--gold); color:var(--espresso-2);}
.order-this{
  margin-top:12px; display:inline-block; font-size:11px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--gold); border-bottom:1px solid var(--gold); padding-bottom:2px; opacity:0; transform:translateX(-4px);
  transition:all .25s ease;
}
.menu-card:hover .order-this{opacity:1; transform:translateX(0);}
.menu-footnote{margin-top:26px; font-size:12.5px; color:rgba(59,31,14,.55); font-style:italic; font-weight:300;}

/* -------- sticky mobile order bar -------- */
.sticky-order-bar{
  position:fixed; left:0; right:0; bottom:0; z-index:250; background:var(--espresso); color:var(--cream);
  display:none; align-items:center; justify-content:space-between; padding:14px 22px;
  box-shadow:0 -6px 24px rgba(0,0,0,.2);
}
.sticky-order-bar span{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:16px;}
@media(max-width:768px){.sticky-order-bar.show{display:flex;}}

/* -------- floating order button (desktop) -------- */
.floating-order{
  position:fixed; right:26px; bottom:26px; z-index:250;
  background:var(--gold); color:var(--espresso-2); border-radius:50px; padding:14px 22px;
  font-size:12px; letter-spacing:.1em; text-transform:uppercase; font-weight:600;
  box-shadow:0 12px 30px rgba(184,146,74,.4); display:flex; align-items:center; gap:8px;
  transition:transform .25s ease;
}
.floating-order:hover{transform:translateY(-2px);}
@media(max-width:768px){.floating-order{display:none;}}

/* -------- Our Story page -------- */
.story-block{padding:90px 0;}
.story-block .wrap{display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center;}
@media(max-width:880px){.story-block .wrap{grid-template-columns:1fr; gap:40px;}}
.story-block.reverse .wrap{direction:rtl;}
.story-block.reverse .wrap > *{direction:ltr;}
.story-block img{width:100%; aspect-ratio:4/4.6; object-fit:cover;}
.story-block h2{font-size:clamp(28px,3.4vw,40px); font-style:italic;}
.story-block p{font-size:16px; line-height:1.85; color:rgba(59,31,14,.75); font-weight:300; margin-top:18px;}
.pull-quote{
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:26px; line-height:1.5;
  color:var(--gold); margin:26px 0; padding-left:22px; border-left:2px solid var(--gold);
}
.values-row{display:grid; grid-template-columns:repeat(4,1fr); gap:36px; padding:70px 0;}
@media(max-width:860px){.values-row{grid-template-columns:repeat(2,1fr);}}
.value-item svg{width:26px;height:26px;color:var(--gold);margin-bottom:12px;}
.value-item h4{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:20px;}
.value-item p{font-size:13.5px; color:rgba(59,31,14,.6); margin-top:8px; line-height:1.6; font-weight:300;}

/* -------- Order Online page -------- */
.order-hero{background:var(--espresso); color:var(--paper); text-align:center; padding:170px 0 100px; position:relative; overflow:hidden;}
.order-hero .rosette-bg{position:absolute; width:520px;height:520px; opacity:.08; top:-160px; left:50%; transform:translateX(-50%);}
.order-hero h1{color:var(--paper); font-size:clamp(38px,5.4vw,60px); font-style:italic; position:relative; z-index:1;}
.order-hero p{color:rgba(251,248,242,.75); max-width:480px; margin:16px auto 0; font-weight:300; position:relative; z-index:1;}
.order-card{
  max-width:640px; margin:-56px auto 0; background:var(--paper); border:1px solid var(--line);
  padding:52px 48px; position:relative; z-index:2; text-align:center; box-shadow:var(--shadow);
}
.order-card h3{font-size:26px; font-style:italic;}
.order-card p{font-size:14.5px; color:rgba(59,31,14,.65); margin-top:12px; font-weight:300; line-height:1.7;}
.order-card .btn{margin-top:26px; width:100%; justify-content:center; padding:16px;}
.order-reassure{margin-top:16px; font-size:12.5px; color:var(--slate); font-style:italic;}
.order-methods{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:60px;}
@media(max-width:700px){.order-methods{grid-template-columns:1fr;}}
.order-method{border:1px solid var(--line); padding:26px; text-align:center;}
.order-method svg{width:24px;height:24px;color:var(--gold); margin-bottom:12px;}
.order-method h4{font-size:18px; font-style:italic;}
.order-method p{font-size:12.5px; color:rgba(59,31,14,.6); margin-top:6px; font-weight:300;}
.embed-placeholder{
  border:1px dashed var(--gold-light); background:var(--sand-soft); padding:40px; text-align:center;
  font-size:12.5px; color:var(--espresso); margin-top:60px; line-height:1.7; font-weight:300;
}
.embed-placeholder code{background:var(--paper); padding:2px 6px; font-size:11.5px;}

/* -------- Find Us page -------- */
.findus-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:0; border:1px solid var(--line);}
@media(max-width:900px){.findus-grid{grid-template-columns:1fr;}}
.findus-info{padding:56px 48px; background:var(--paper); display:flex; flex-direction:column; gap:28px;}
.hours-row{display:flex; justify-content:space-between; font-size:14px; padding:7px 0; border-bottom:1px solid var(--line); font-weight:300;}
.hours-row:last-child{border-bottom:none;}
.findus-map{min-height:460px;}
.findus-map iframe{width:100%;height:100%;min-height:460px;border:0;}
.gallery-strip{display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:60px;}
@media(max-width:768px){.gallery-strip{grid-template-columns:repeat(2,1fr);}}
.gallery-strip img{width:100%; aspect-ratio:1; object-fit:cover;}

/* -------- Contact page -------- */
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:70px;}
@media(max-width:880px){.contact-grid{grid-template-columns:1fr;}}
.field{margin-bottom:20px;}
.field label{display:block; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--slate); margin-bottom:8px; font-weight:500;}
.field input,.field textarea{
  width:100%; padding:13px 16px; border:1px solid var(--line); background:var(--paper);
  font-family:'Jost'; font-size:14.5px; color:var(--espresso); border-radius:var(--radius);
}
.field input:focus,.field textarea:focus{outline:2px solid var(--gold); outline-offset:1px;}
.field textarea{resize:vertical; min-height:130px;}
.contact-info-card{background:var(--espresso); color:var(--paper); padding:44px 40px;}
.contact-info-card h3{color:var(--paper); font-style:italic; font-size:26px;}
.contact-info-card .row{margin-top:24px;}
.contact-info-card .row h5{font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-light); margin-bottom:6px; font-weight:600;}
.contact-info-card .row p,.contact-info-card .row a{font-family:'Cormorant Garamond',serif; font-size:17px;}
.social-icons{display:flex; gap:14px; margin-top:30px;}
.social-icons a{width:38px;height:38px;border:1px solid rgba(251,248,242,.3); border-radius:50%; display:flex; align-items:center; justify-content:center;}
.social-icons a:hover{background:var(--gold); border-color:var(--gold);}
.social-icons svg{width:16px;height:16px;}

/* -------- newsletter -------- */
.newsletter-form{display:flex; gap:0; max-width:340px; margin-top:14px;}
.newsletter-form input{
  flex:1; padding:12px 14px; border:1px solid rgba(251,248,242,.3); background:transparent; color:var(--paper);
  font-family:'Jost'; font-size:13px;
}
.newsletter-form input::placeholder{color:rgba(251,248,242,.5);}
.newsletter-form button{
  padding:12px 20px; background:var(--gold); border:1px solid var(--gold); color:var(--espresso-2);
  font-size:11px; letter-spacing:.1em; text-transform:uppercase; font-weight:600; cursor:pointer;
}

/* -------- footer -------- */
footer{background:var(--espresso-2); color:rgba(251,248,242,.65); padding:70px 0 26px;}
.foot-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr 1.1fr; gap:50px; padding-bottom:44px; border-bottom:1px solid var(--line-light);}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr; row-gap:38px;}}
.foot-brand{display:flex; align-items:center; gap:12px; margin-bottom:14px;}
.foot-brand img{width:42px;height:42px;border-radius:50%;}
.foot-brand span{font-family:'Cormorant Garamond',serif; font-size:21px; color:var(--paper);}
.foot-col h5{font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-light); margin-bottom:14px; font-weight:600;}
.foot-col a,.foot-col p{display:block; font-size:13.5px; margin-bottom:9px; color:rgba(251,248,242,.65); font-weight:300;}
.foot-col a:hover{color:var(--gold-light);}
.foot-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:22px; flex-wrap:wrap; gap:10px; font-size:11.5px; color:rgba(251,248,242,.4);}
