/* Creative Fantasy Studio — site stylesheet (cleaned 2026-10-06)
   Built from the design layers by keeping only rules that match the site's pages; duplicates removed, adjacent same-selector rules merged. */
:root{--cream: #fbf5ef; --paper: #FFFAF6; --pink: #c2185b; --pink-hover: #a3154d; --plum: #50102f; --ink: #242126; --muted: #615A59; --gold: #98703b; --line: #E7CCB6; --soft-section: #F5E8DD; --soft-pink: #F4DFDF; --font-heading: "Playfair Display",Georgia,serif; --font-body: "Lato",Arial,sans-serif; --font-ui: "Montserrat",Arial,sans-serif;}
*{box-sizing: border-box;}
html{scroll-behavior: smooth; scroll-padding-top: 95px;}
body{margin: 0px; background: var(--cream); color: var(--ink); font: 500 16px/1.65 var(--font-body);}
img{max-width: 100%; display: block;}
a{color: inherit; text-decoration: none;}
button, input, textarea{font: inherit;}
.wrap{width: min(1190px, 100% - 48px); margin-inline: auto;}
.topbar{position: sticky; top: 0px; z-index: 20; background: rgba(251, 243, 237, 0.95); border-bottom: 1px solid var(--line); backdrop-filter: blur(14px);}
.nav{height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px;}
.brand{display: flex; flex-direction: column; align-items: center; min-width: 180px; color: var(--pink); font: 600 22px/.95 var(--font-heading); letter-spacing: 0.08em;}
.brand small{font: 500 10px/1.6 var(--font-ui); letter-spacing: 0.48em; color: var(--gold); padding-left: 0.45em;}
.navlinks{display: flex; align-items: center; gap: 22px;}
.navlinks a{font: 600 10px/1.4 var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; white-space: nowrap; transition: color 0.2s;}
.navlinks a:hover, .navlinks a.active{color: var(--pink);}
.nav-cta, .btn{display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 49px; padding: 0px 21px; border: 1px solid var(--pink); border-radius: 5px; background: var(--pink); color: rgb(255, 255, 255); font: 600 10px/1 var(--font-ui); letter-spacing: 0.12em; text-transform: uppercase; transition: transform 0.25s, box-shadow 0.25s, background 0.25s;}
.nav-cta:hover, .btn:hover{transform: translateY(-2px); background: var(--pink-hover); box-shadow: rgba(229, 9, 97, 0.19) 0px 10px 25px;}
.btn.outline{background: transparent; border-color: var(--gold); color: var(--plum);}
.btn.outline:hover{background: var(--paper); box-shadow: rgba(80, 11, 43, 0.07) 0px 8px 22px;}
.menu-toggle{display: none; background: none; border: 0px; color: var(--plum); font-size: 26px; cursor: pointer;}
.eyebrow{color: var(--gold); font: 500 10px/1.8 var(--font-ui); letter-spacing: 0.3em; text-transform: uppercase;}
.display{font: 500 clamp(46px,6vw,78px)/.98 var(--font-heading); letter-spacing: -0.025em; margin: 16px 0px 21px;}
.display .accent, .accent{color: var(--pink);}
.lead{font-size: 17px; line-height: 1.7; color: var(--muted); max-width: 640px;}
.title-rule{width: 54px; border-top: 3px solid var(--pink); margin: 18px 0px 23px;}
.actions{display: flex; gap: 12px; flex-wrap: wrap; margin-top: 25px;}
.hero{display: grid; grid-template-columns: 1.02fr 0.98fr; gap: 48px; align-items: center; min-height: 620px; padding: 55px 0px 65px;}
.hero-copy{position: relative; z-index: 1;}
.hero .display .line{display: block; overflow: hidden; padding-bottom: 0.06em;}
.hero .display .line > span{display: block; animation: 0.9s cubic-bezier(0.2, 0.7, 0.25, 1) 0s 1 normal both running rise-in;}
.hero .display .line:nth-child(2) > span{animation-delay: 0.2s;}
.hero-image{height: 520px; position: relative;}
.hero-image img{width: 100%; height: 100%; object-fit: cover; object-position: 55% 50%; border-radius: 190px 190px 5px 5px;}
.hero-image::after{content: ""; position: absolute; inset: 14px -14px -14px 14px; border: 1px solid var(--gold); border-radius: 190px 190px 5px 5px; z-index: -1;}
.trustbar{display: grid; grid-template-columns: repeat(5, 1fr); padding: 21px 0px; border-block: 1px solid var(--line);}
.trustbar div{display: flex; align-items: center; justify-content: center; gap: 10px; padding: 5px 10px; border-right: 1px solid rgb(216, 196, 180); font-size: 12px; text-align: center;}
.trustbar div:last-child{border: 0px;}
.section{padding: 92px 0px;}
.section-head{text-align: center; max-width: 780px; margin: 0px auto 42px;}
.section-head .display{font-size: clamp(40px, 5vw, 62px);}
.script{font: italic clamp(23px,3vw,34px)/1.1 var(--font-heading); color: var(--gold); margin: -4px 0px 24px;}
.page-hero{padding: 65px 0px 38px; text-align: center;}
.page-hero .display{font-size: clamp(44px, 5.8vw, 72px);}
.page-hero .lead{margin: 0px auto;}
.contact-form{display: grid; grid-template-columns: 1fr 1fr; gap: 16px;}
.field{display: flex; flex-direction: column; gap: 7px;}
.field.full{grid-column: 1 / -1;}
.field label{font: 500 10px var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; color: var(--plum);}
.field input, .field textarea{width: 100%; padding: 13px 14px; border: 1px solid var(--line); border-radius: 5px; background: var(--paper); outline: none; color: var(--ink);}
.field input:focus, .field textarea:focus{border-color: var(--pink); box-shadow: rgba(229, 9, 97, 0.082) 0px 0px 0px 3px;}
.field textarea{min-height: 135px; resize: vertical;}
.form-status{grid-column: 1 / -1; color: var(--plum); font-size: 13px; margin: 0px;}
.footer{padding: 22px 0px; text-align: center; color: var(--muted); font: 500 9px var(--font-ui); letter-spacing: 0.18em;}
.lightbox{position: fixed; inset: 0px; z-index: 50; background: rgba(30, 17, 25, 0.93); display: none; align-items: center; justify-content: center; padding: 30px;}
.lightbox.open{display: flex; animation: 0.25s ease 0s 1 normal both running fade-in;}
.lightbox img{max-width: min(1100px, 92vw); max-height: 86vh; object-fit: contain; border: 1px solid rgba(255, 255, 255, 0.267); border-radius: 5px;}
.lightbox-close{position: absolute; top: 18px; right: 24px; border: 0px; background: none; color: white; font-size: 36px; cursor: pointer;}
.reveal{opacity: 1; transform: none;}
.js .reveal{opacity: 0; transform: translateY(20px); transition: opacity 0.7s, transform 0.7s cubic-bezier(0.2, 0.65, 0.25, 1);}
.js .reveal.in-view{opacity: 1; transform: none;}
.js .reveal[data-delay="1"]{transition-delay: 0.12s;}
.js .reveal[data-delay="2"]{transition-delay: 0.22s;}
.js .reveal[data-delay="3"]{transition-delay: 0.32s;}
@keyframes rise-in { 
  0% { opacity: 0; transform: translateY(105%); }
  100% { opacity: 1; transform: translateY(0px); }
}
@keyframes fade-in { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@media (max-width: 1050px){
  .navlinks{gap: 12px;}
  .navlinks a{font-size: 9px;}
  .nav-cta{padding: 0px 14px; font-size: 9px;}
  .hero{gap: 30px;}
  .hero-image{height: 460px;}
}
@media (max-width: 820px){
  .navlinks{display: none; position: absolute; top: 81px; left: 0px; right: 0px; padding: 21px 24px; background: var(--paper); border-bottom: 1px solid var(--line); box-shadow: rgba(80, 11, 43, 0.063) 0px 12px 20px; flex-direction: column; align-items: flex-start;}
  .navlinks.open{display: flex;}
  .navlinks a{font-size: 11px;}
  .menu-toggle{display: block;}
  .nav-cta{display: none;}
  .hero{grid-template-columns: 1fr 0.9fr; min-height: 530px;}
  .hero-image{height: 390px;}
  .trustbar{grid-template-columns: repeat(3, 1fr); row-gap: 12px;}
  .trustbar div:nth-child(3){border: 0px;}
  .trustbar div:nth-child(n+4){border-top: 1px solid var(--line); padding-top: 14px;}
}
@media (max-width: 620px){
  .wrap{width: calc(100% - 34px);}
  .nav{height: 72px;}
  .navlinks{top: 71px;}
  .brand{font-size: 20px;}
  .hero{grid-template-columns: 1fr; padding: 43px 0px 39px; gap: 30px;}
  .hero .display{font-size: clamp(47px, 11vw, 63px);}
  .hero .lead{font-size: 15px;}
  .hero-image{width: calc(100% - 12px); height: 340px; margin: auto;}
  .actions .btn{width: 100%;}
  .trustbar{grid-template-columns: 1fr 1fr; padding: 14px 0px;}
  .trustbar div{font-size: 10px;}
  .trustbar div:nth-child(2), .trustbar div:nth-child(4){border-right: 0px;}
  .trustbar div:nth-child(3){border-right: 1px solid rgb(216, 196, 180); border-top: 1px solid var(--line); padding-top: 14px;}
  .trustbar div:nth-child(4), .trustbar div:nth-child(5){border-top: 1px solid var(--line); padding-top: 14px;}
  .trustbar div:nth-child(5){grid-column: 1 / -1;}
  .section{padding: 66px 0px;}
  .section-head{margin-bottom: 30px;}
  .section-head .display{font-size: 42px;}
  .display{font-size: 44px;}
  .page-hero{padding: 48px 0px 25px;}
  .contact-form{grid-template-columns: 1fr;}
  .field.full{grid-column: auto;}
  .form-status{grid-column: auto;}
}
@media (max-width: 390px){
  .hero-image{height: 300px;}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior: auto;}
  *, ::before, ::after{animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important;}
  .js .reveal{opacity: 1; transform: none;}
}
.trustbar.premium-trustbar{grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 0px; margin: 0px auto 44px; padding: 14px 10px; background: linear-gradient(115deg, rgb(255, 250, 246) 0%, rgb(245, 232, 221) 100%); border: 1px solid rgb(231, 204, 182); border-radius: 11px; box-shadow: rgba(80, 11, 43, 0.047) 0px 12px 34px;}
.trustbar.premium-trustbar .trust-item{min-height: 62px; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 5px 14px; border-right: 1px solid rgb(231, 204, 182); text-align: left;}
.trustbar.premium-trustbar .trust-item:last-child{border-right: 0px;}
.trust-icon, .age-mark{flex: 0 0 39px; width: 39px; height: 39px; border: 1px solid rgb(201, 156, 107); border-radius: 50%; display: grid; place-items: center; color: rgb(156, 96, 29); background: rgb(255, 250, 246);}
.trust-icon svg{width: 19px; height: 19px; fill: none; stroke: currentcolor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round;}
.trust-label{color: rgb(80, 16, 47); font: 600 9px/1.5 var(--font-ui); letter-spacing: 0.075em; text-transform: uppercase;}
@media (max-width: 820px){
  .trustbar.premium-trustbar{grid-template-columns: repeat(3, 1fr); padding: 11px 8px;}
  .trustbar.premium-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .trustbar.premium-trustbar .trust-item:nth-child(n+4){border-top: 1px solid rgb(231, 204, 182); padding-top: 12px;}
  .trustbar.premium-trustbar .trust-item:nth-child(4){border-right: 1px solid rgb(231, 204, 182);}
}
@media (max-width: 620px){
  .trustbar.premium-trustbar{grid-template-columns: 1fr 1fr; gap: 0px;}
  .trustbar.premium-trustbar .trust-item{justify-content: flex-start; min-height: 59px; padding: 9px 10px; border-top: 1px solid rgb(231, 204, 182); border-right: 1px solid rgb(231, 204, 182);}
  .trustbar.premium-trustbar .trust-item:nth-child(1), .trustbar.premium-trustbar .trust-item:nth-child(2){border-top: 0px;}
  .trustbar.premium-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .trustbar.premium-trustbar .trust-item:last-child{grid-column: 1 / -1; border-right: 0px;}
  .trustbar.premium-trustbar .trust-label{font-size: 8px;}
  .trust-icon, .age-mark{flex-basis: 34px; width: 34px; height: 34px;}
}
.quote-mark{height: 34px; color: rgb(194, 24, 91); font: 400 58px/.9 var(--font-heading);}
.testimonial-author{display: flex; align-items: center; gap: 12px; padding-top: 15px; border-top: 1px solid rgb(231, 204, 182);}
.author-mark{width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid rgb(201, 156, 107); border-radius: 50%; color: rgb(152, 112, 59); font: 500 15px var(--font-heading);}
.testimonial-author strong{display: block; color: rgb(80, 16, 47); font: 600 9px var(--font-ui); letter-spacing: 0.08em; text-transform: uppercase;}
.testimonial-author small{display: block; margin-top: 4px; color: rgb(97, 90, 89); font-size: 11px;}
.page-home .hero{position: relative; width: 100%; max-width: none; min-height: min(760px, -82px + 100svh); grid-template-columns: minmax(0px, 1fr); gap: 0px; padding: 64px max(24px, -683px + 50vw) 72px; overflow: hidden; isolation: isolate;}
.page-home .hero-copy{max-width: 760px; width: 58%; padding: 20px 0px; z-index: 2;}
.page-home .hero .eyebrow{color: var(--ink); font-size: 11px; letter-spacing: 0.34em;}
.page-home .hero .title-rule{margin: 20px 0px 24px;}
.page-home .hero .display{font-size: clamp(58px, 6vw, 92px); margin: 0px 0px 18px;}
.page-home .hero .lead{max-width: 700px; color: rgb(55, 50, 55); font-size: clamp(17px, 1.35vw, 21px); line-height: 1.55;}
.page-home .hero-image{position: absolute; z-index: -1; inset: 0px 0px 0px auto; width: 67%; height: 100%;}
.page-home .hero-image img{border-radius: 0px; object-position: 55% center;}
.page-home .hero-image::after{content: ""; position: absolute; z-index: 0; inset: 0px auto 0px -1px; width: 42%; border: 0px; border-radius: 0px; background: linear-gradient(90deg,var(--cream) 0%,#FBF3EDF2 22%,#FBF3EDB8 54%,transparent 100%);}
.page-home .hero .actions .btn{min-height: 58px; padding-inline: 27px; font-size: 11px;}
.page-home .trustbar.premium-trustbar{width: min(1366px, 100% - 48px); max-width: 1366px; padding: 14px 0px 18px; border: 0px;}
.page-home .trustbar.premium-trustbar .trust-item{font-size: 13px;}
@media (max-width: 820px){
  .page-home .hero{min-height: 610px; padding: 50px 24px 54px;}
  .page-home .hero-copy{width: 65%;}
  .page-home .hero-image{width: 72%;}
}
@media (max-width: 620px){
  .page-home .hero{min-height: 0px; padding: 40px 17px 25px; gap: 0px;}
  .page-home .hero-copy{width: 100%; padding: 20px 0px 0px;}
  .page-home .hero .display{font-size: clamp(48px, 12vw, 68px);}
  .page-home .hero-image{position: relative; inset: auto; width: 100%; height: 320px; margin-top: 24px; z-index: 0;}
  .page-home .hero-image img{border-radius: 12px;}
  .page-home .hero-image::after{display: none;}
  .page-home .trustbar.premium-trustbar{padding: 10px 0px;}
}
.brand{flex-direction: row; justify-content: flex-start; align-items: center; gap: 8px; min-width: 220px;}
.brand-mark{display: block; width: 38px; height: 50px; flex: 0 0 38px; object-fit: contain; filter: drop-shadow(rgba(80, 11, 43, 0.133) 0px 2px 3px);}
.brand-type{display: flex; flex-direction: column; align-items: flex-start; line-height: 0.95;}
.brand-type > span{font: 600 21px/.95 var(--font-heading); letter-spacing: 0.045em; white-space: nowrap;}
.brand-type > small{font: 500 9px/1.6 var(--font-ui); letter-spacing: 0.48em; color: var(--gold); padding-left: 0.2em;}
@media (max-width: 1000px){
  .brand{min-width: 190px; gap: 6px;}
  .brand-mark{width: 32px; height: 44px; flex-basis: 32px;}
  .brand-type > span{font-size: 18px;}
  .brand-type > small{font-size: 8px;}
}
@media (max-width: 620px){
  .brand{min-width: 0px;}
  .brand-mark{width: 30px; height: 42px; flex-basis: 30px;}
  .brand-type > span{font-size: 17px;}
  .brand-type > small{font-size: 8px;}
}
.page-home .hero{display: block; position: relative; width: 100%; max-width: none; min-height: min(780px, -82px + 100svh); padding: 70px max(24px, -825px + 50vw) 112px; overflow: hidden; isolation: isolate;}
.page-home .hero-copy{width: min(780px, 58%); max-width: none; padding: 12px 0px; position: relative; z-index: 2;}
.page-home .hero .eyebrow{color: rgb(33, 30, 32); font-size: 11px; line-height: 1.9; letter-spacing: 0.42em;}
.page-home .hero .title-rule{margin: 18px 0px 24px; width: 58px;}
.page-home .hero .display{font-size: clamp(56px, 5vw, 90px); line-height: 0.92; letter-spacing: -0.025em; margin: 0px 0px 20px;}
.page-home .hero .lead{max-width: 730px; color: rgb(48, 45, 46); font-size: clamp(17px, 1.35vw, 21px); line-height: 1.55;}
.page-home .hero .actions{gap: 16px; margin-top: 24px;}
.page-home .hero .actions .btn{min-height: 60px; padding-inline: 32px; font-size: 11px; border-radius: 6px;}
.page-home .hero .actions .btn.outline{background: rgba(255, 250, 246, 0.72); border-color: rgb(142, 100, 30); color: rgb(56, 44, 35);}
.page-home .hero-image{position: absolute; z-index: -1; inset: 0px 0px 0px auto; width: 67%; height: 100%; margin: 0px;}
.page-home .hero-image img{width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; border-radius: 0px;}
.page-home .hero-image::after{content: ""; position: absolute; inset: 0px auto 0px -1px; width: 44%; border: 0px; border-radius: 0px; background: linear-gradient(90deg, rgb(251, 245, 239) 0%, rgba(251, 243, 237, 0.96) 18%, rgba(251, 243, 237, 0.79) 53%, rgba(251, 243, 237, 0) 100%); z-index: 1;}
.page-home .hero-trustbar{position: absolute; z-index: 3; left: max(24px, -825px + 50vw); bottom: 22px; width: min(1080px, 100% - 48px); max-width: 1080px; padding: 0px; border: 0px; grid-template-columns: auto auto auto auto auto; justify-content: start; align-items: center;}
.page-home .hero-trustbar .trust-item{min-height: 48px; gap: 11px; padding: 4px 20px; border-right: 1px solid rgba(167, 103, 24, 0.4); color: rgb(33, 30, 32); font-size: 13px; text-align: left; white-space: nowrap;}
.page-home .hero-trustbar .trust-icon{width: 34px; height: 34px; display: grid; place-items: center; color: rgb(149, 101, 23);}
.page-home .hero-trustbar .trust-label{color: rgb(33, 30, 32); font: 500 13px/1.3 var(--font-body);}
@media (max-width: 1000px){
  .page-home .hero{min-height: 680px; padding-top: 64px;}
  .page-home .hero-copy{width: 64%;}
  .page-home .hero-image{width: 72%;}
  .page-home .hero-trustbar{grid-template-columns: repeat(3, auto); row-gap: 4px; width: min(800px, 100% - 48px);}
  .page-home .hero-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(n+4){border-top: 1px solid rgba(167, 103, 24, 0.25); padding-top: 10px;}
  .page-home .hero-trustbar .trust-item:nth-child(4){border-right: 1px solid rgba(167, 103, 24, 0.4);}
}
@media (max-width: 620px){
  .page-home .hero{min-height: 0px; padding: 36px 17px 20px;}
  .page-home .hero-copy{width: 100%; padding: 12px 0px 0px;}
  .page-home .hero .eyebrow{font-size: 9px; letter-spacing: 0.3em;}
  .page-home .hero .display{font-size: clamp(48px, 11.5vw, 68px);}
  .page-home .hero .lead{font-size: 15px;}
  .page-home .hero .actions{gap: 10px;}
  .page-home .hero .actions .btn{width: 100%; min-height: 54px;}
  .page-home .hero-image{position: relative; inset: auto; width: 100%; height: 300px; margin: 24px 0px 0px; z-index: 0;}
  .page-home .hero-image img{border-radius: 8px; object-position: 50% 15%;}
  .page-home .hero-image::after{display: none;}
  .page-home .hero-trustbar{position: relative; inset: auto; width: 100%; max-width: none; margin-top: 12px; padding: 8px 0px 0px; transform: none; grid-template-columns: 1fr 1fr; justify-content: stretch;}
  .page-home .hero-trustbar .trust-item{min-height: 54px; justify-content: flex-start; padding: 7px 8px; border-top: 1px solid rgba(167, 103, 24, 0.25); border-right: 1px solid rgba(167, 103, 24, 0.4); white-space: normal; font-size: 10px;}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 8px;}
  .page-home .hero-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(5){grid-column: 1 / -1; border-right: 0px;}
  .page-home .hero-trustbar .trust-icon{width: 29px; height: 29px; flex-basis: 29px;}
  .page-home .hero-trustbar .trust-icon svg{width: 27px; height: 27px;}
  .page-home .hero-trustbar .trust-label{font-size: 10px;}
}
.page-home .hero-image{inset: 0px; width: 100%; height: 100%;}
.page-home .hero-image img{object-position: center center;}
.page-home .hero-image::after{display: none;}
.page-home .hero-copy{width: min(790px, 55%);}
.page-home .hero .display{font-size: clamp(58px, 5.15vw, 94px);}
@media (max-width: 1000px){
  .page-home .hero-copy{width: 64%;}
  .page-home .hero-image{width: 100%;}
}
@media (max-width: 620px){
  .page-home .hero-copy{width: 100%;}
  .page-home .hero-image{width: 100%; height: 300px;}
  .page-home .hero-image img{object-position: 58% center;}
}
.page-home{background: var(--dark,#201719); color: var(--cream,#fff8f2);}
.page-home .topbar{position: absolute; top: 0px; left: 0px; right: 0px; z-index: 20; background: transparent; border: 0px; backdrop-filter: none; box-shadow: none;}
.page-home .nav{width: min(1660px, 100% - 112px); height: 126px; gap: 22px; justify-content: flex-start;}
.page-home .brand{min-width: 390px; gap: 10px; color: rgb(194, 24, 91);}
.page-home .brand-mark{width: 42px; height: 56px; flex-basis: 42px; filter: drop-shadow(rgba(33, 23, 25, 0.376) 0px 1px 2px);}
.page-home .brand-type > span{font: 500 clamp(27px,2.25vw,40px)/.94 var(--font-heading); letter-spacing: 0.015em; color: rgb(241, 53, 131);}
.page-home .brand-type > small{display: flex; align-items: center; justify-content: center; gap: 11px; width: 100%; padding: 0px; color: rgb(230, 201, 143); font: 500 13px/1.4 var(--font-ui); letter-spacing: 0.52em;}
.page-home .brand-type > small::before, .page-home .brand-type > small::after{content: ""; display: block; width: 62px; height: 1px; background: rgb(230, 201, 143);}
.page-home .navlinks a{display: flex; align-items: center; min-height: 34px; padding: 0px 18px; color: rgb(255, 248, 242); font: 500 15px/1.25 var(--font-body); letter-spacing: 0.015em; text-transform: none; white-space: nowrap;}
.page-home .navlinks a:first-child{color: rgb(230, 201, 143);}
.page-home .navlinks a + a{border-left: 1px solid rgba(230, 201, 143, 0.59);}
.page-home .navlinks a:hover, .page-home .navlinks a.active{color: rgb(194, 24, 91);}
.page-home .nav-cta{display: none;}
.page-home .menu-toggle{display: none; color: rgb(255, 248, 242);}
.page-home .hero{position: relative; width: 100%; height: 100svh; min-height: 760px; max-width: none; padding: 184px max(5%, -830px + 50vw) 112px; overflow: hidden; isolation: isolate; background: rgb(32, 23, 25);}
.page-home .hero-copy{position: relative; z-index: 2; width: min(800px, 51%); max-width: none; padding: 10px 0px 0px;}
.page-home .hero .eyebrow{color: rgb(230, 201, 143); font-size: 11px; line-height: 1.9; letter-spacing: 0.43em;}
.page-home .hero .title-rule{width: 58px; margin: 17px 0px 24px; border-top-color: rgb(194, 24, 91);}
.page-home .hero .display{margin: 0px 0px 18px; font-size: clamp(58px, 5.1vw, 94px); line-height: 0.92; letter-spacing: -0.025em; color: rgb(255, 248, 242);}
.page-home .hero .display .accent{color: rgb(194, 24, 91);}
.page-home .hero .lead{max-width: 745px; color: rgb(255, 248, 242); font-size: clamp(17px, 1.18vw, 20px); line-height: 1.62;}
.page-home .hero .actions{display: flex; gap: 16px; flex-wrap: wrap; margin-top: 24px;}
.page-home .hero .actions .btn{min-height: 72px; padding: 0px 30px; border-radius: 7px; font-size: 12px; letter-spacing: 0.08em;}
.page-home .hero .actions .btn:first-child{min-width: 310px;}
.page-home .hero .actions .btn.outline{min-width: 380px; background: transparent; border-color: rgb(230, 201, 143); color: rgb(255, 240, 206);}
.page-home .hero .actions .btn.outline:hover{background: rgba(230, 201, 143, 0.125); box-shadow: rgba(32, 23, 25, 0.19) 0px 8px 22px;}
.page-home .hero-image{position: absolute; z-index: -1; inset: 0px; width: 100%; height: 100%; margin: 0px;}
.page-home .hero-image img{width: 100%; height: 100%; object-fit: cover; object-position: center center; border-radius: 0px;}
.page-home .hero-image::after{content: ""; position: absolute; inset: 0px; border: 0px; border-radius: 0px; background: linear-gradient(90deg, rgba(43, 27, 29, 0.74) 0%, rgba(50, 31, 33, 0.66) 27%, rgba(62, 39, 41, 0.36) 46%, rgba(55, 37, 39, 0.1) 63%, rgba(32, 23, 25, 0) 78%); z-index: 1;}
.page-home .hero-trustbar{position: absolute; z-index: 3; left: max(5%, -830px + 50vw); bottom: 44px; width: min(1080px, 90%); max-width: 1080px; padding: 0px; border: 0px; grid-template-columns: auto auto auto auto auto; justify-content: start; align-items: center; background: transparent;}
.page-home .hero-trustbar .trust-item{min-height: 48px; gap: 11px; padding: 4px 20px; border-right: 1px solid rgba(230, 201, 143, 0.5); color: rgb(255, 248, 242); font-size: 13px; text-align: left; white-space: nowrap;}
.page-home .hero-trustbar .trust-item:last-child{border: 0px;}
.page-home .hero-trustbar .trust-icon{width: 34px; height: 34px; display: grid; place-items: center; color: rgb(230, 201, 143);}
.page-home .hero-trustbar .trust-icon svg{width: 31px; height: 31px; fill: none; stroke: currentcolor; stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round;}
.page-home .hero-trustbar .trust-label{color: rgb(255, 248, 242); font: 500 13px/1.3 var(--font-body);}
@media (max-width: 1200px){
  .page-home .nav{width: calc(100% - 64px);}
  .page-home .brand{min-width: 310px;}
  .page-home .brand-mark{width: 36px; height: 48px; flex-basis: 36px;}
  .page-home .navlinks a{padding-inline: 12px; font-size: 13px;}
  .page-home .hero-copy{width: 58%;}
  .page-home .hero .display{font-size: clamp(55px, 5.4vw, 75px);}
  .page-home .hero-trustbar .trust-item{padding-inline: 12px;}
}
@media (max-width: 960px){
  .page-home .nav{height: 108px;}
  .page-home .brand{min-width: 0px;}
  .page-home .navlinks{display: none; position: absolute; top: calc(100% - 10px); left: 32px; right: 32px; padding: 14px 18px; background: rgba(56, 38, 41, 0.95); border: 1px solid rgba(230, 201, 143, 0.44); border-radius: 8px; box-shadow: rgba(32, 23, 25, 0.25) 0px 14px 34px; flex-direction: column; align-items: stretch;}
  .page-home .navlinks.open{display: flex;}
  .page-home .navlinks a{min-height: 44px; padding: 9px 8px; font-size: 15px;}
  .page-home .navlinks a + a{border-left: 0px; border-top: 1px solid rgba(230, 201, 143, 0.314);}
  .page-home .menu-toggle{display: block; margin-left: auto; font-size: 27px;}
  .page-home .hero{padding-top: 158px;}
  .page-home .hero-copy{width: min(680px, 66%);}
  .page-home .hero-trustbar{grid-template-columns: repeat(3, auto); row-gap: 2px; width: min(850px, 90%);}
  .page-home .hero-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(n+4){border-top: 1px solid rgba(230, 201, 143, 0.314); padding-top: 10px;}
  .page-home .hero-trustbar .trust-item:nth-child(4){border-right: 1px solid rgba(230, 201, 143, 0.5);}
}
@media (max-width: 620px){
  .page-home .nav{width: calc(100% - 36px); height: 90px;}
  .page-home .brand{gap: 7px;}
  .page-home .brand-mark{width: 31px; height: 42px; flex-basis: 31px;}
  .page-home .brand-type > span{font-size: 23px;}
  .page-home .brand-type > small{font-size: 9px; gap: 7px;}
  .page-home .brand-type > small::before, .page-home .brand-type > small::after{width: 40px;}
  .page-home .navlinks{left: 18px; right: 18px;}
  .page-home .hero{height: auto; min-height: 100svh; padding: 145px 20px 26px;}
  .page-home .hero-copy{width: 100%; padding: 8px 0px 0px;}
  .page-home .hero .eyebrow{font-size: 9px; letter-spacing: 0.32em;}
  .page-home .hero .display{font-size: clamp(49px, 11.5vw, 68px);}
  .page-home .hero .lead{font-size: 15px; line-height: 1.55;}
  .page-home .hero .actions{gap: 10px;}
  .page-home .hero .actions .btn{width: 100%; min-height: 58px;}
  .page-home .hero .actions .btn:first-child, .page-home .hero .actions .btn.outline{min-width: 0px;}
  .page-home .hero-image img{object-position: 58% center;}
  .page-home .hero-image::after{background: linear-gradient(90deg, rgba(43, 27, 29, 0.78), rgba(50, 31, 33, 0.62) 58%, rgba(32, 23, 25, 0.23));}
  .page-home .hero-trustbar{position: relative; inset: auto; width: 100%; max-width: none; margin-top: 28px; padding: 0px; grid-template-columns: 1fr 1fr; justify-content: stretch; transform: none;}
  .page-home .hero-trustbar .trust-item{min-height: 51px; justify-content: flex-start; padding: 7px 8px; border-top: 1px solid rgba(230, 201, 143, 0.333); border-right: 1px solid rgba(230, 201, 143, 0.44); white-space: normal; font-size: 10px;}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 8px;}
  .page-home .hero-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(5){grid-column: 1 / -1; border-right: 0px;}
  .page-home .hero-trustbar .trust-icon{width: 29px; height: 29px; flex-basis: 29px;}
  .page-home .hero-trustbar .trust-icon svg{width: 27px; height: 27px;}
  .page-home .hero-trustbar .trust-label{font-size: 10px;}
}
.page-home{--pink: #c2185b; --deep-pink: #c2185b; --champagne: #E6C98F; --gold: #C9A45C; --cream: #FFF8F2; --burgundy: #6D263B; --dark: #201719; background: var(--dark); color: var(--cream);}
.page-home .hero-image::after{background: linear-gradient(90deg, rgba(32, 23, 25, 0.84) 0%, rgba(43, 27, 30, 0.79) 28%, rgba(53, 33, 37, 0.65) 43%, rgba(62, 39, 43, 0.34) 57%, rgba(32, 23, 25, 0.06) 72%, transparent 80%);}
.page-home .hero .eyebrow, .page-home .hero .lead, .page-home .hero .display{text-shadow: rgba(24, 13, 16, 0.28) 0px 2px 12px;}
.page-home .hero .eyebrow{color: rgb(255, 230, 181);}
.page-home .hero .lead{color: rgb(255, 249, 244);}
.page-home .hero .display{color: rgb(255, 249, 244);}
.page-home .hero .display .accent{color: rgb(255, 45, 138); text-shadow: rgba(24, 13, 16, 0.24) 0px 2px 12px;}
.page-home .navlinks a{color: rgb(255, 249, 244); text-shadow: rgba(24, 13, 16, 0.24) 0px 1px 8px;}
.page-home .navlinks a:first-child{color: rgb(255, 230, 181);}
.page-home .navlinks a:hover, .page-home .navlinks a:focus-visible{color: rgb(255, 74, 153);}
.page-home .hero .actions .btn{background: rgb(194, 24, 91); color: rgb(255, 255, 255); border-color: rgb(194, 24, 91); text-shadow: none;}
.page-home .hero .actions .btn:hover{background: rgb(194, 24, 91); border-color: rgb(194, 24, 91);}
.page-home .hero .actions .btn.outline{background: rgba(32, 23, 25, 0.18); border-color: rgb(230, 201, 143); color: rgb(255, 240, 206); text-shadow: rgba(24, 13, 16, 0.28) 0px 1px 5px;}
.page-home .hero .actions .btn.outline:hover{background: rgba(230, 201, 143, 0.18); border-color: rgb(255, 230, 181); color: rgb(255, 255, 255);}
.page-home .hero-trustbar .trust-item{border-color: rgba(230, 201, 143, 0.76);}
.page-home .hero-trustbar .trust-icon, .page-home .hero-trustbar .age-mark{color: rgb(255, 230, 181);}
.page-home .hero-trustbar .trust-label{color: rgb(255, 249, 244); text-shadow: rgba(24, 13, 16, 0.3) 0px 1px 8px;}
.page-home :focus-visible{outline: rgb(255, 230, 181) solid 2px; outline-offset: 4px;}
@media (max-width: 620px){
  .page-home .hero-image::after{background: linear-gradient(90deg, rgba(32, 23, 25, 0.8), rgba(45, 28, 32, 0.67) 62%, rgba(32, 23, 25, 0.36));}
}
.page-home{color: rgb(32, 23, 25); background: rgb(255, 248, 242);}
.page-home .topbar{background: rgba(255, 248, 242, 0.96); border-bottom: 1px solid rgba(201, 164, 92, 0.35); box-shadow: rgba(32, 23, 25, 0.1) 0px 8px 24px;}
.page-home .nav{min-height: 126px;}
.page-home .navlinks a{color: rgb(32, 23, 25); text-shadow: none;}
.page-home .navlinks a:first-child{color: rgb(109, 38, 59);}
.page-home .navlinks a + a{border-left-color: rgba(201, 164, 92, 0.65);}
.page-home .navlinks a:hover, .page-home .navlinks a:focus-visible{color: rgb(194, 24, 91);}
.page-home .nav-cta{display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; margin-left: 12px; padding: 0px 20px; background: rgb(194, 24, 91); border: 1px solid rgb(194, 24, 91); border-radius: 6px; color: rgb(255, 255, 255); font: 600 11px/1 var(--font-ui); letter-spacing: 0.09em; text-transform: uppercase; box-shadow: rgba(109, 38, 59, 0.14) 0px 8px 20px;}
.page-home .nav-cta:hover{background: rgb(194, 24, 91); transform: translateY(-1px);}
.page-home .hero{background: rgb(255, 248, 242);}
.page-home .hero-image::after{background: linear-gradient(90deg, rgba(255, 248, 242, 0.98) 0%, rgba(255, 248, 242, 0.94) 28%, rgba(255, 248, 242, 0.76) 44%, rgba(255, 248, 242, 0.4) 57%, rgba(255, 248, 242, 0.1) 69%, transparent 80%);}
.page-home .hero-copy{width: min(800px, 54%);}
.page-home .hero .eyebrow{color: rgb(109, 38, 59); text-shadow: none;}
.page-home .hero .display{color: rgb(32, 23, 25); text-shadow: none;}
.page-home .hero .display .accent{color: rgb(194, 24, 91); text-shadow: none;}
.page-home .hero .lead{color: rgb(48, 39, 41); text-shadow: none;}
.page-home .hero .actions .btn:first-child{min-width: clamp(220px, 20vw, 310px);}
.page-home .hero .actions .btn.outline{min-width: clamp(260px, 25vw, 380px); background: rgba(255, 248, 242, 0.72); border-color: rgb(167, 125, 53); color: rgb(32, 23, 25); text-shadow: none;}
.page-home .hero .actions .btn.outline:hover{background: rgb(255, 248, 242); border-color: rgb(109, 38, 59); color: rgb(109, 38, 59);}
.page-home .hero-trustbar{bottom: 28px; padding: 10px 14px; background: rgba(255, 248, 242, 0.93); border: 1px solid rgba(201, 164, 92, 0.48); border-radius: 9px; box-shadow: rgba(32, 23, 25, 0.12) 0px 8px 24px;}
.page-home .hero-trustbar .trust-item{border-right-color: rgba(109, 38, 59, 0.28);}
.page-home .hero-trustbar .trust-label{color: rgb(32, 23, 25); text-shadow: none;}
.page-home .footer{background: rgb(32, 23, 25); color: rgb(255, 248, 242);}
@media (max-width: 1200px){
  .page-home .hero-copy{width: 58%;}
}
@media (max-width: 960px){
  .page-home .nav-cta{display: none;}
  .page-home .hero-copy{width: min(680px, 66%);}
  .page-home .hero-trustbar{bottom: 24px; width: min(850px, 90%);}
}
@media (max-width: 620px){
  .page-home .topbar{background: rgba(255, 248, 242, 0.97);}
  .page-home .nav{min-height: 90px;}
  .page-home .hero-copy{width: 100%;}
  .page-home .hero .display{color: rgb(32, 23, 25);}
  .page-home .hero-trustbar{background: rgba(255, 248, 242, 0.94);}
}
@media (max-width: 960px){
  .page-home .navlinks{background: rgba(255, 248, 242, 0.99); border-color: rgba(201, 164, 92, 0.52); box-shadow: rgba(32, 23, 25, 0.16) 0px 14px 34px;}
  .page-home .navlinks a{color: rgb(32, 23, 25);}
  .page-home .navlinks a:first-child{color: rgb(109, 38, 59);}
  .page-home .navlinks a + a{border-top-color: rgba(201, 164, 92, 0.32);}
  .page-home .hero{height: auto; min-height: 100svh; grid-template-columns: minmax(0px, 1fr); align-content: center; gap: 0px; padding: 148px max(5%, 24px) 34px;}
  .page-home .hero-copy{width: min(700px, 78%); padding: 0px;}
  .page-home .hero-trustbar{position: relative; inset: auto; grid-column: 1 / -1; width: min(850px, 100%); margin: 28px 0px 0px; transform: none;}
}
@media (max-width: 620px){
  .page-home .hero{min-height: 100svh; padding: 126px 20px 25px;}
  .page-home .hero-copy{width: 100%; padding: 0px;}
  .page-home .hero .actions .btn{width: 100%;}
  .page-home .hero-trustbar{width: 100%; margin-top: 22px; padding: 8px 10px; grid-template-columns: 1fr 1fr;}
}
.page-home .hero-trustbar{padding: 0px; background: transparent; border: 0px; border-radius: 0px; box-shadow: none;}
.page-home .hero-trustbar .trust-item{background: transparent; border-right: 1px solid rgba(109, 38, 59, 0.34); gap: 12px; padding: 5px 18px; color: rgb(32, 23, 25); white-space: nowrap;}
.page-home .hero-trustbar .trust-icon{width: 36px; height: 36px; flex: 0 0 36px; color: rgb(138, 100, 38); filter: drop-shadow(rgba(255, 248, 242, 0.92) 0px 1px 1px);}
.page-home .hero-trustbar .trust-icon svg{width: 34px; height: 34px; fill: none; stroke: currentcolor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round;}
.page-home .hero-trustbar .trust-label{color: rgb(32, 23, 25); font: 600 13px/1.3 var(--font-body); letter-spacing: 0.01em; text-transform: none; -webkit-text-stroke: 0.25px rgb(255, 248, 242); paint-order: stroke; text-shadow: rgba(255, 248, 242, 0.94) 0px 1px 3px, rgba(255, 248, 242, 0.78) 0px 0px 5px;}
.page-home .hero-trustbar .trust-icon, .page-home .hero-trustbar .age-mark{color: rgb(138, 100, 38);}
@media (max-width: 1200px){
  .page-home .hero-trustbar .trust-item{padding-inline: 12px; gap: 9px;}
}
@media (max-width: 620px){
  .page-home .hero-trustbar{padding: 0px; background: transparent; border: 0px; box-shadow: none;}
  .page-home .hero-trustbar .trust-item{background: transparent; border-top: 1px solid rgba(109, 38, 59, 0.28); border-right: 1px solid rgba(109, 38, 59, 0.28); padding: 7px 8px; gap: 8px;}
  .page-home .hero-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(5){border-right: 0px;}
  .page-home .hero-trustbar .trust-label{font-size: 11px;}
}
.page-home .nav{font-family: Montserrat, sans-serif; font-size: 14px; font-weight: 500; letter-spacing: 0.01em;}
.page-home .navlinks a{font-family: Montserrat, sans-serif; font-size: 14px; font-weight: 500; letter-spacing: 0.01em; text-transform: none;}
.page-home .contact-button{font-family: Montserrat, sans-serif; font-size: 13px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase;}
.page-home .hero .hero-title{font-family: "Playfair Display", serif; font-size: 72px; font-weight: 500; font-style: normal; line-height: 0.95; letter-spacing: -0.025em; color: rgb(38, 35, 38);}
.page-home .hero .hero-title .accent{color: rgb(245, 0, 107); font-weight: 500;}
.page-home .hero .hero-description{font-family: Montserrat, sans-serif; font-size: 18px; font-weight: 400; font-style: normal; line-height: 1.55; letter-spacing: -0.01em; color: rgb(41, 39, 42);}
@media (max-width: 1200px){
  .page-home .hero .hero-title{font-size: clamp(52px, 6vw, 64px);}
}
@media (max-width: 960px){
  .page-home .hero .hero-title{font-size: clamp(52px, 7vw, 66px);}
  .page-home .navlinks a{font-size: 14px;}
}
@media (max-width: 620px){
  .page-home .hero .hero-title{font-size: clamp(44px, 11.5vw, 66px);}
  .page-home .hero .hero-description{font-size: 16px; line-height: 1.55;}
}
.page-home .hero-trustbar .trust-item{min-height: 44px; border-right-color: rgba(138, 100, 38, 0.23); gap: 12px;}
.page-home .hero-trustbar .trust-icon{color: rgb(152, 118, 64); filter: drop-shadow(rgba(255, 248, 242, 0.62) 0px 1px 2px);}
.page-home .hero-trustbar .trust-icon svg{stroke-width: 1.35;}
.page-home .hero-trustbar .trust-label{color: rgb(48, 39, 41); font-size: 14px; font-weight: 500; letter-spacing: 0px; text-transform: none; -webkit-text-stroke: 0px; paint-order: normal; text-shadow: rgba(255, 248, 242, 0.88) 0px 1px 2px, rgba(255, 248, 242, 0.54) 0px 0px 4px;}
@media (max-width: 1200px){
  .page-home .hero-trustbar .trust-item{gap: 9px; padding-inline: 11px;}
  .page-home .hero-trustbar .trust-label{font-size: 13px;}
}
@media (max-width: 620px){
  .page-home .hero-trustbar .trust-item{min-height: 46px; gap: 8px; border-right-color: rgba(138, 100, 38, 0.21);}
  .page-home .hero-trustbar .trust-label{font-size: 12px;}
  .page-home .hero-trustbar .trust-icon{color: rgb(152, 118, 64); filter: drop-shadow(rgba(255, 248, 242, 0.68) 0px 1px 1px);}
}
.topbar{position: sticky; top: 0px; z-index: 20; background: rgba(255, 248, 242, 0.96); border-bottom: 1px solid rgba(201, 164, 92, 0.35); box-shadow: rgba(32, 23, 25, 0.1) 0px 8px 24px; backdrop-filter: blur(14px);}
.topbar .nav{width: min(1660px, 100% - 112px); height: 126px; display: flex; align-items: center; justify-content: flex-start; gap: 22px;}
.topbar .brand{display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 10px; min-width: 390px; color: rgb(194, 24, 91);}
.topbar .brand-mark{display: block; width: 42px; height: 56px; flex: 0 0 42px; object-fit: contain; filter: drop-shadow(rgba(33, 23, 25, 0.376) 0px 1px 2px);}
.topbar .brand-type > span{font: 500 clamp(27px,2.25vw,40px)/.94 var(--font-heading); letter-spacing: 0.015em; white-space: nowrap; color: rgb(241, 53, 131);}
.topbar .brand-type > small{display: flex; align-items: center; justify-content: center; gap: 11px; width: 100%; padding: 0px; color: rgb(167, 125, 53); font: 500 13px/1.4 var(--font-ui); letter-spacing: 0.52em;}
.topbar .brand-type > small::before, .topbar .brand-type > small::after{content: ""; display: block; width: 62px; height: 1px; background: rgb(201, 164, 92);}
.topbar .navlinks a{display: flex; align-items: center; min-height: 36px; padding: 0px 16px; color: rgb(32, 23, 25); font: 500 14px / 1.25 Montserrat, sans-serif; letter-spacing: 0.01em; text-transform: none; white-space: nowrap; transition: color 0.2s;}
.topbar .navlinks a:first-child{color: rgb(109, 38, 59);}
.topbar .navlinks a + a{border-left: 1px solid rgba(201, 164, 92, 0.58);}
.topbar .navlinks a:hover, .topbar .navlinks a:focus-visible, .topbar .navlinks a.active{color: rgb(194, 24, 91);}
.topbar .nav-cta.contact-button{display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; margin-left: 12px; padding: 0px 20px; border: 1px solid rgb(194, 24, 91); border-radius: 6px; background: rgb(194, 24, 91); color: rgb(255, 255, 255); font: 600 13px / 1 Montserrat, sans-serif; letter-spacing: 0.12em; text-transform: uppercase; box-shadow: rgba(109, 38, 59, 0.14) 0px 8px 20px;}
.topbar .nav-cta.contact-button:hover{background: rgb(194, 24, 91); border-color: rgb(194, 24, 91); transform: translateY(-1px);}
.topbar .menu-toggle{display: none; color: rgb(32, 23, 25);}
@media (max-width: 1200px){
  .topbar .nav{width: calc(100% - 64px);}
  .topbar .brand{min-width: 310px;}
  .topbar .brand-mark{width: 36px; height: 48px; flex-basis: 36px;}
  .topbar .brand-type > span{font-size: clamp(25px, 2.3vw, 31px);}
  .topbar .brand-type > small{font-size: 11px;}
  .topbar .navlinks a{padding-inline: 12px; font-size: 13px;}
  .topbar .nav-cta.contact-button{font-size: 12px; padding-inline: 16px;}
}
@media (max-width: 960px){
  .topbar .nav{height: 108px;}
  .topbar .brand{min-width: 0px;}
  .topbar .navlinks{display: none; position: absolute; top: calc(100% - 10px); left: 32px; right: 32px; padding: 14px 18px; background: rgba(255, 248, 242, 0.99); border: 1px solid rgba(201, 164, 92, 0.52); border-radius: 8px; box-shadow: rgba(32, 23, 25, 0.16) 0px 14px 34px; flex-direction: column; align-items: stretch;}
  .topbar .navlinks.open{display: flex;}
  .topbar .navlinks a{min-height: 44px; padding: 9px 8px; font-size: 14px;}
  .topbar .navlinks a + a{border-left: 0px; border-top: 1px solid rgba(201, 164, 92, 0.32);}
  .topbar .nav-cta.contact-button{display: none;}
  .topbar .menu-toggle{display: block; margin-left: auto; font-size: 27px;}
}
@media (max-width: 620px){
  .topbar .nav{width: calc(100% - 36px); height: 90px;}
  .topbar .brand{gap: 7px;}
  .topbar .brand-mark{width: 31px; height: 42px; flex-basis: 31px;}
  .topbar .brand-type > span{font-size: 23px;}
  .topbar .brand-type > small{font-size: 9px; gap: 7px;}
  .topbar .brand-type > small::before, .topbar .brand-type > small::after{width: 40px;}
  .topbar .navlinks{left: 18px; right: 18px;}
}
.page-about main{overflow: hidden; background: rgb(251, 245, 239);}
.page-home .hero .display .line{overflow: visible; padding-bottom: 0px;}
.page-home .hero-trustbar{left: max(4.6%, -830px + 50vw); bottom: clamp(34px, 6.8vh, 60px); width: max-content; max-width: calc(90.8%); padding: 0px; display: grid; grid-template-columns: auto auto auto auto auto; align-items: center; justify-content: start; gap: 0px; background: transparent; border: 0px; border-radius: 0px; box-shadow: none; backdrop-filter: none;}
.page-home .hero-trustbar .trust-item{min-height: 48px; gap: 12px; padding: 4px clamp(13px, 1.1vw, 20px); border-right: 1px solid rgba(151, 112, 47, 0.43); background: transparent; color: rgb(41, 39, 42); white-space: nowrap;}
.page-home .hero-trustbar .trust-icon{width: 40px; height: 40px; flex: 0 0 40px; color: rgb(152, 118, 64); filter: drop-shadow(rgba(255, 248, 242, 0.55) 0px 1px 1px);}
.page-home .hero-trustbar .trust-icon svg{width: 38px; height: 38px; fill: none; stroke: currentcolor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round;}
.page-home .hero-trustbar .trust-label{color: rgb(41, 39, 42); font: 500 14px / 1.35 Montserrat, sans-serif; letter-spacing: -0.01em; text-transform: none; text-shadow: rgba(255, 248, 242, 0.78) 0px 1px 2px, rgba(255, 248, 242, 0.36) 0px 0px 4px;}
@media (max-width: 1200px){
  .page-home .hero-trustbar{left: 4%; max-width: 92%;}
  .page-home .hero-trustbar .trust-item{gap: 9px; padding-inline: 12px;}
  .page-home .hero-trustbar .trust-label{font-size: 13px;}
}
@media (max-width: 960px){
  .page-home .hero-trustbar{left: auto; width: min(850px, 100%); max-width: 100%; grid-template-columns: repeat(3, auto);}
  .page-home .hero-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(n+4){border-top: 1px solid rgba(151, 112, 47, 0.25); padding-top: 9px;}
  .page-home .hero-trustbar .trust-item:nth-child(4){border-right: 1px solid rgba(151, 112, 47, 0.43);}
}
@media (max-width: 620px){
  .page-home .hero-trustbar{width: 100%; max-width: 100%; margin-top: 22px; grid-template-columns: 1fr 1fr;}
  .page-home .hero-trustbar .trust-item{min-height: 50px; justify-content: flex-start; padding: 7px 8px; border-top: 1px solid rgba(151, 112, 47, 0.25); border-right: 1px solid rgba(151, 112, 47, 0.32); white-space: normal;}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 8px;}
  .page-home .hero-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(5){grid-column: 1 / -1; border-right: 0px;}
  .page-home .hero-trustbar .trust-icon{width: 31px; height: 31px; flex-basis: 31px;}
  .page-home .hero-trustbar .trust-icon svg{width: 29px; height: 29px;}
  .page-home .hero-trustbar .trust-label{font-size: 11px;}
}
.page-home .hero{position: relative; isolation: isolate;}
.page-home .hero::after{content: ""; position: absolute; z-index: 0; left: 0px; right: 0px; bottom: 0px; height: clamp(110px, 17vh, 190px); pointer-events: none; background: linear-gradient(rgba(251, 243, 237, 0) 0%, rgba(251, 243, 237, 0.68) 68%, rgb(251, 245, 239) 100%);}
@media (max-width: 620px){
  .page-home .hero::after{height: 92px;}
}
.page-home .hero::after{height: clamp(230px, 28vh, 330px); background: linear-gradient(rgba(251, 243, 237, 0) 0%, rgba(251, 243, 237, 0.05) 30%, rgba(251, 243, 237, 0.28) 58%, rgba(251, 243, 237, 0.76) 84%, rgb(251, 245, 239) 100%);}
.page-home .testimonial-author{margin-top: 4px; border-color: rgba(167, 125, 53, 0.34);}
.page-home .testimonial-author strong{color: rgb(80, 16, 47); font-size: 11px; text-transform: none;}
.page-home .testimonial-author small{color: rgb(91, 75, 72);}
@media (max-width: 620px){
  .page-home .hero::after{height: 155px;}
}
body.page-home{--cream: #fbf5ef; --paper: #FFFAF6; --ink: #282328; --muted: #51494A; --plum: #50102f; --pink: #c2185b; --gold: #98713B; --line: #E7CCB6; --font-body: "Montserrat",Arial,sans-serif; overflow-x: clip; background: var(--cream); color: var(--ink); font-family: var(--font-body);}
.page-home main{overflow: clip;}
.page-home .topbar{position: absolute; inset: 0px 0px auto; z-index: 20; background: linear-gradient(rgba(255, 250, 246, 0.98) 0%, rgba(255, 250, 246, 0.92) 74%, rgba(255, 250, 246, 0.72) 100%); border: 0px; box-shadow: rgba(48, 31, 35, 0.035) 0px 10px 30px; backdrop-filter: blur(16px);}
.page-home .nav{width: min(1440px, 100% - 80px); height: 112px; min-height: 112px; gap: 20px; justify-content: flex-start;}
.page-home .brand{min-width: clamp(270px, 25vw, 360px); gap: 9px; color: rgb(194, 24, 91);}
.page-home .brand-mark{width: 40px; height: 52px; flex: 0 0 40px; filter: drop-shadow(rgba(40, 20, 25, 0.14) 0px 1px 2px);}
.page-home .brand-type > span{font: 500 clamp(26px, 2.25vw, 36px) / 0.94 "Playfair Display", Georgia, serif; letter-spacing: 0.015em; color: rgb(217, 39, 105);}
.page-home .brand-type > small{display: flex; align-items: center; justify-content: center; gap: 9px; padding: 0px; color: rgb(148, 109, 56); font: 500 10px / 1.5 Montserrat, Arial, sans-serif; letter-spacing: 0.48em;}
.page-home .brand-type > small::before, .page-home .brand-type > small::after{content: ""; display: block; width: 48px; height: 1px; background: rgb(201, 164, 92);}
.page-home .navlinks{display: flex; align-items: center; justify-content: flex-end; gap: 0px; margin-left: auto;}
.page-home .navlinks a{display: flex; align-items: center; min-height: 36px; padding: 0px 12px; color: rgb(51, 42, 45); font: 500 12px / 1.35 Montserrat, Arial, sans-serif; letter-spacing: 0.005em; text-transform: none; white-space: nowrap; transition: color 0.2s;}
.page-home .navlinks a:first-child{color: rgb(118, 45, 69);}
.page-home .navlinks a + a{border-left: 1px solid rgba(167, 125, 53, 0.27);}
.page-home .navlinks a:hover, .page-home .navlinks a:focus-visible, .page-home .navlinks a.active{color: var(--pink);}
.page-home .nav-cta.contact-button{display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 46px; margin-left: 8px; padding: 0px 17px; border: 1px solid rgb(194, 24, 91); border-radius: 5px; background: rgb(194, 24, 91); color: rgb(255, 255, 255); font: 600 11px / 1 Montserrat, Arial, sans-serif; letter-spacing: 0.1em; text-transform: uppercase; box-shadow: rgba(109, 38, 59, 0.12) 0px 8px 20px; white-space: nowrap; transition: background 0.2s, transform 0.2s, box-shadow 0.2s;}
.page-home .nav-cta.contact-button:hover{background: rgb(163, 21, 77); border-color: rgb(163, 21, 77); transform: translateY(-1px); box-shadow: rgba(109, 38, 59, 0.16) 0px 10px 22px;}
.page-home .menu-toggle{display: none; color: rgb(80, 16, 47);}
.page-home .hero{position: relative; isolation: isolate; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; width: 100%; max-width: none; min-width: 0px; min-height: min(880px, 100svh); height: auto; margin: 0px; padding: 158px max(36px, -690px + 50vw) 36px; overflow: hidden; background: rgb(251, 245, 239);}
.page-home .hero-copy{position: relative; z-index: 2; width: min(800px, 64%); max-width: 800px; padding: 0px;}
.page-home .hero .eyebrow{color: rgb(98, 40, 61); font: 500 11px / 1.8 Montserrat, Arial, sans-serif; letter-spacing: 0.32em; text-shadow: none;}
.page-home .hero .title-rule{width: 52px; margin: 17px 0px 20px; border-top: 3px solid var(--pink);}
.page-home .hero .hero-title{max-width: 800px; margin: 0px 0px 20px; color: rgb(38, 35, 38); font: 500 clamp(60px, 6vw, 94px) / 0.94 "Playfair Display", Georgia, serif; letter-spacing: -0.03em; text-wrap: balance;}
.page-home .hero .hero-title .accent{color: rgb(194, 24, 91); font-weight: 500;}
.page-home .hero .hero-description{max-width: 640px; margin: 0px; color: rgb(48, 41, 44); font: 500 clamp(16px, 1.2vw, 18px) / 1.68 Montserrat, Arial, sans-serif; letter-spacing: -0.006em; text-shadow: rgba(255, 250, 246, 0.62) 0px 1px 2px;}
.page-home .hero .actions{display: flex; flex-wrap: wrap; gap: 14px; margin-top: 25px;}
.page-home .hero .actions .btn{min-height: 58px; padding: 0px 23px; border-radius: 5px; font: 600 11px / 1 Montserrat, Arial, sans-serif; letter-spacing: 0.09em; box-shadow: rgba(80, 11, 43, 0.08) 0px 8px 20px; transition: background 0.22s, border-color 0.22s, color 0.22s, transform 0.22s, box-shadow 0.22s;}
.page-home .hero .actions .btn:first-child{min-width: clamp(220px, 18vw, 280px); background: rgb(194, 24, 91); border-color: rgb(194, 24, 91); color: rgb(255, 255, 255);}
.page-home .hero .actions .btn:first-child:hover{background: rgb(163, 21, 77); border-color: rgb(163, 21, 77); transform: translateY(-2px); box-shadow: rgba(80, 11, 43, 0.15) 0px 11px 24px;}
.page-home .hero .actions .btn.outline{min-width: clamp(250px, 22vw, 330px); background: rgba(255, 250, 246, 0.72); border-color: rgb(155, 113, 54); color: rgb(57, 46, 48); box-shadow: none;}
.page-home .hero .actions .btn.outline:hover{background: rgb(255, 250, 246); border-color: rgb(118, 45, 69); color: rgb(118, 45, 69); transform: translateY(-2px);}
.page-home .hero-image img{width: 100%; height: 100%; object-fit: cover; object-position: 55% center; border: 0px; border-radius: 0px; transform: scale(1.025);}
.page-home .hero-image::after{content: ""; position: absolute; inset: 0px; z-index: 1; width: auto; border: 0px; border-radius: 0px; background: linear-gradient(rgba(251, 243, 237, 0.93) 0%, rgba(251, 243, 237, 0.57) 92px, rgba(251, 243, 237, 0) 225px), linear-gradient(0deg, rgb(251, 245, 239) 0%, rgba(251, 243, 237, 0.76) 72px, rgba(251, 243, 237, 0) 220px), linear-gradient(90deg, rgb(251, 245, 239) 0%, rgba(251, 243, 237, 0.98) 16%, rgba(251, 243, 237, 0.9) 34%, rgba(251, 243, 237, 0.66) 51%, rgba(251, 243, 237, 0.22) 72%, rgba(251, 243, 237, 0) 100%);}
.page-home .hero::after{content: ""; position: absolute; z-index: 1; inset: auto 0px 0px; height: 54px; pointer-events: none; background: linear-gradient(rgba(251, 243, 237, 0), rgba(251, 243, 237, 0.58));}
.page-home .hero-trustbar{position: relative; inset: auto; z-index: 3; display: grid; grid-template-columns: repeat(5, minmax(0px, 1fr)); align-items: center; justify-content: stretch; gap: 0px; width: min(1120px, 100%); max-width: 100%; margin: 42px 0px 0px; padding: 0px; background: none; border: 0px; border-radius: 0px; box-shadow: none; backdrop-filter: none;}
.page-home .hero-trustbar .trust-item{display: flex; align-items: center; justify-content: flex-start; min-width: 0px; min-height: 50px; gap: 9px; padding: 6px 13px; border-width: 0px 1px 0px 0px; border-style: none solid none none; border-color: currentcolor rgba(138, 100, 38, 0.28) currentcolor currentcolor; border-image: none; background: transparent; color: rgb(46, 40, 43); text-align: left; white-space: normal;}
.page-home .hero-trustbar .trust-icon{display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border: 0px; border-radius: 0px; background: none; color: rgb(144, 106, 50); filter: none;}
.page-home .hero-trustbar .trust-icon svg{width: 27px; height: 27px; fill: none; stroke: currentcolor; stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round;}
.page-home .hero-trustbar .age-item .trust-label{color: rgb(111, 46, 69); font: 600 14px / 1.3 Montserrat, Arial, sans-serif; letter-spacing: 0.02em;}
.page-home .hero-trustbar .trust-label{color: rgb(52, 45, 48); font: 500 11px / 1.45 Montserrat, Arial, sans-serif; letter-spacing: 0px; text-transform: none; -webkit-text-stroke: 0px; paint-order: normal; text-shadow: rgba(255, 250, 246, 0.75) 0px 1px 2px;}
.page-home .testimonial-full{margin-top: 14px; border-top: 1px solid rgba(167, 125, 53, 0.24); padding-top: 11px;}
.page-home .testimonial-full summary{display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; list-style: none; color: rgb(118, 85, 45); font: 600 10px / 1.5 Montserrat, Arial, sans-serif; letter-spacing: 0.04em;}
.page-home .testimonial-full summary::after{content: "+"; display: grid; place-items: center; width: 22px; height: 22px; flex: 0 0 22px; border: 1px solid rgba(167, 125, 53, 0.44); border-radius: 50%; color: rgb(118, 85, 45); font: 500 14px / 1 Montserrat, Arial, sans-serif;}
.page-home .testimonial-full > div{padding-top: 11px; color: rgb(64, 56, 58);}
.page-home .footer{position: relative; padding: 28px 24px 30px; background: linear-gradient(rgb(251, 245, 239) 0%, rgb(248, 238, 232) 100%); border-top: 1px solid rgba(167, 125, 53, 0.18); color: rgb(92, 80, 80); font: 500 10px / 1.6 Montserrat, Arial, sans-serif; letter-spacing: 0.08em;}
.js .page-home .reveal{opacity: 0; transform: translateY(12px); transition: opacity 0.68s, transform 0.68s cubic-bezier(0.22, 0.62, 0.28, 1);}
.js .page-home .reveal.in-view{opacity: 1; transform: translateY(0px);}
.js .page-home .reveal[data-delay="1"]{transition-delay: 0.08s;}
.js .page-home .reveal[data-delay="2"]{transition-delay: 0.14s;}
@keyframes home-photo-drift { 
  0% { transform: scale(1.025) translateY(0px); }
  100% { transform: scale(1.045) translateY(-0.5%); }
}
@media (prefers-reduced-motion: no-preference){
  .page-home .hero-image img{animation: 34s ease-in-out 0s infinite alternate none running home-photo-drift;}
}
@media (max-width: 1200px){
  .page-home .nav{width: calc(100% - 64px); gap: 13px;}
  .page-home .brand{min-width: 250px;}
  .page-home .brand-mark{width: 36px; height: 48px; flex-basis: 36px;}
  .page-home .brand-type > span{font-size: clamp(24px, 2.4vw, 30px);}
  .page-home .brand-type > small{font-size: 9px; gap: 7px;}
  .page-home .brand-type > small::before, .page-home .brand-type > small::after{width: 39px;}
  .page-home .navlinks a{padding-inline: 8px; font-size: 11px;}
  .page-home .nav-cta.contact-button{min-height: 44px; margin-left: 5px; padding-inline: 12px; font-size: 10px; letter-spacing: 0.075em;}
  .page-home .hero{padding-top: 148px;}
  .page-home .hero-copy{width: min(780px, 68%);}
  .page-home .hero .hero-title{font-size: clamp(58px, 6.2vw, 78px);}
  .page-home .hero-trustbar{width: min(1100px, 100%);}
  .page-home .hero-trustbar .trust-item{gap: 7px; padding-inline: 9px;}
}
@media (max-width: 1000px){
  .page-home .topbar{background: linear-gradient(rgba(255, 250, 246, 0.98), rgba(255, 250, 246, 0.86)); backdrop-filter: blur(14px);}
  .page-home .nav{width: calc(100% - 48px); height: 92px; min-height: 92px;}
  .page-home .brand{min-width: 0px;}
  .page-home .brand-mark{width: 34px; height: 44px; flex-basis: 34px;}
  .page-home .brand-type > span{font-size: clamp(23px, 4vw, 30px);}
  .page-home .navlinks{display: none; position: absolute; top: calc(100% - 2px); left: 24px; right: 24px; z-index: 2; padding: 10px 16px; background: rgba(255, 250, 246, 0.98); border: 1px solid rgba(201, 164, 92, 0.4); border-radius: 0px 0px 8px 8px; box-shadow: rgba(40, 25, 30, 0.12) 0px 14px 28px; flex-direction: column; align-items: stretch;}
  .page-home .navlinks.open{display: flex;}
  .page-home .navlinks a{min-height: 44px; padding: 10px 6px; font-size: 13px;}
  .page-home .navlinks a + a{border-width: 1px 0px 0px; border-style: solid none none; border-color: rgba(167, 125, 53, 0.2) currentcolor currentcolor; border-image: none;}
  .page-home .nav-cta.contact-button{display: none;}
  .page-home .menu-toggle{display: grid; place-items: center; width: 42px; height: 42px; margin-left: auto; border: 1px solid rgba(80, 11, 43, 0.18); border-radius: 50%; background: rgba(255, 250, 246, 0.52); color: rgb(80, 16, 47); font-size: 22px; line-height: 1; cursor: pointer;}
  .page-home .hero{min-height: min(840px, 100svh); padding: 136px 40px 32px;}
  .page-home .hero-copy{width: min(700px, 72%);}
  .page-home .hero .hero-title{font-size: clamp(56px, 7.4vw, 72px);}
  .page-home .hero .hero-description{max-width: 600px; font-size: 16px;}
  .page-home .hero-trustbar{grid-template-columns: repeat(3, minmax(0px, 1fr)); width: min(840px, 100%); margin-top: 34px;}
  .page-home .hero-trustbar .trust-item{min-height: 48px; padding: 7px 10px; border-top: 1px solid rgba(138, 100, 38, 0.21);}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 10px;}
  .page-home .hero-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(n+4){border-top: 1px solid rgba(138, 100, 38, 0.21);}
  .page-home .hero-trustbar .trust-label{font-size: 10px;}
}
@media (max-width: 700px){
  .page-home .hero{min-height: 0px; padding: 122px 22px 28px;}
  .page-home .hero-copy{width: 100%; max-width: 620px;}
  .page-home .hero .eyebrow{font-size: 9px; letter-spacing: 0.26em;}
  .page-home .hero .title-rule{margin: 14px 0px 18px;}
  .page-home .hero .hero-title{font-size: clamp(48px, 9.7vw, 64px); line-height: 0.94; margin-bottom: 15px;}
  .page-home .hero .hero-description{max-width: 560px; font-size: 15px; line-height: 1.7;}
  .page-home .hero .actions{gap: 10px; margin-top: 20px;}
  .page-home .hero .actions .btn, .page-home .hero .actions .btn:first-child, .page-home .hero .actions .btn.outline{width: 100%; min-width: 0px; min-height: 54px;}
  .page-home .hero-image::after{background: linear-gradient(rgba(251, 243, 237, 0.98) 0%, rgba(251, 243, 237, 0.68) 110px, rgba(251, 243, 237, 0.34) 330px, rgba(251, 243, 237, 0.72) 78%, rgb(251, 245, 239) 100%), linear-gradient(90deg, rgb(251, 245, 239) 0%, rgba(251, 243, 237, 0.93) 28%, rgba(251, 243, 237, 0.6) 60%, rgba(251, 243, 237, 0.15) 100%);}
  .page-home .hero-trustbar{grid-template-columns: repeat(2, minmax(0px, 1fr)); width: 100%; margin-top: 25px;}
  .page-home .hero-trustbar .trust-item{min-height: 46px; gap: 7px; padding: 7px 8px; border-top: 1px solid rgba(138, 100, 38, 0.2); border-right: 1px solid rgba(138, 100, 38, 0.2);}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 8px;}
  .page-home .hero-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(5){grid-column: 1 / -1; border-right: 0px;}
  .page-home .hero-trustbar .trust-icon{flex-basis: 26px; width: 26px; height: 26px;}
  .page-home .hero-trustbar .trust-icon svg{width: 24px; height: 24px;}
  .page-home .footer{padding: 24px 18px;}
}
@media (max-width: 390px){
  .page-home .nav{width: calc(100% - 34px);}
  .page-home .brand-type > span{font-size: 22px;}
  .page-home .brand-type > small{font-size: 8px; letter-spacing: 0.43em;}
  .page-home .brand-type > small::before, .page-home .brand-type > small::after{width: 35px;}
  .page-home .hero{padding-inline: 18px;}
  .page-home .hero .hero-title{font-size: 47px;}
  .page-home .hero .actions .btn{font-size: 10px;}
  .page-home .hero-trustbar .trust-label{font-size: 9px;}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior: auto;}
  .js .page-home .reveal, .js .page-home .reveal.in-view{opacity: 1; transform: none; transition: none;}
  .page-home .hero-image img{transform: scale(1.025); animation: auto ease 0s 1 normal none running none !important;}
  .page-home .navlinks a, .page-home .nav-cta.contact-button, .page-home .hero .actions .btn, .page-home .offering-card, .page-home .offering-icon, .page-home .testimonial-card{transition: none;}
}
:root{--cream: #fbf5ef; --paper: #fffaf6; --ink: #282326; --muted: #574e4e; --plum: #50102f; --pink: #c2185b; --gold: #98703b; --line: #e5cdb6; --font-heading: "Playfair Display",Georgia,serif; --font-body: "Lato",Arial,sans-serif; --font-ui: "Montserrat",Arial,sans-serif; --content: min(1190px,calc(100% - 64px)); color-scheme: light;}
html{scroll-behavior: smooth; scroll-padding-top: 104px;}
body{margin: 0px; overflow-x: hidden; background: var(--cream); color: var(--ink); font: 400 16px/1.72 var(--font-body); -webkit-font-smoothing: antialiased; text-rendering: optimizelegibility;}
body.page-home{--font-body: "Lato",Arial,sans-serif; --cream: #fbf5ef; --paper: #fffaf6; --ink: #282326; --muted: #574e4e; font-family: var(--font-body); background: var(--cream); color: var(--ink);}
body img{max-width: 100%;}
main{overflow: clip;}
p{color: var(--muted);}
.wrap{width: var(--content); max-width: 1190px; margin-inline: auto;}
.display{font-family: var(--font-heading); font-weight: 500; letter-spacing: -0.025em; text-wrap: balance;}
.accent, .pink{color: var(--pink);}
.eyebrow{color: rgb(135, 96, 47); font: 600 10px/1.7 var(--font-ui); letter-spacing: 0.24em; text-transform: uppercase;}
.lead, .small-copy, .body-copy p{font-family: var(--font-body); font-size: clamp(15px, 1.15vw, 17px); line-height: 1.8; color: rgb(64, 56, 58);}
.section{padding-block: clamp(64px, 8vw, 108px);}
.section-head{max-width: 780px; margin: 0px auto 34px; text-align: center;}
.section-head .display{margin: 10px 0px 14px; font-size: clamp(42px, 5vw, 66px); line-height: 1.04; color: var(--ink);}
::selection{background: rgb(247, 191, 212); color: rgb(53, 19, 33);}
:focus-visible{outline: rgb(165, 109, 36) solid 2px; outline-offset: 4px;}
.topbar{position: sticky; top: 0px; z-index: 30; background: rgba(255, 250, 246, 0.94); border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgba(160, 117, 60, 0.2); border-image: none; box-shadow: rgba(52, 31, 36, 0.055) 0px 8px 26px; backdrop-filter: blur(16px);}
.topbar .nav{position: relative; display: flex; width: min(1480px, 100% - 76px); height: 98px; min-height: 98px; align-items: center; justify-content: flex-start; gap: 20px;}
.topbar .brand{display: flex; min-width: clamp(260px, 27vw, 365px); flex-direction: row; align-items: center; justify-content: flex-start; gap: 10px; color: var(--pink);}
.topbar .brand-mark{display: block; width: 38px; height: 50px; flex: 0 0 38px; object-fit: contain; filter: drop-shadow(rgba(40, 20, 25, 0.12) 0px 1px 2px);}
.topbar .brand-type{display: flex; flex-direction: column; align-items: flex-start; line-height: 0.95;}
.topbar .brand-type > span{color: rgb(194, 24, 91); font: 500 clamp(25px,2.3vw,34px)/.96 var(--font-heading); letter-spacing: 0.015em; white-space: nowrap;}
.topbar .brand-type > small{display: flex; width: 100%; align-items: center; justify-content: center; gap: 9px; padding: 2px 0px 0px; color: rgb(142, 105, 47); font: 500 9px/1.5 var(--font-ui); letter-spacing: 0.48em;}
.topbar .brand-type > small::before, .topbar .brand-type > small::after{width: 42px; height: 1px; background: rgb(201, 164, 92); content: "";}
.topbar .navlinks{display: flex; align-items: center; justify-content: flex-end; gap: 0px; margin-left: auto;}
.topbar .navlinks a{display: flex; min-height: 36px; align-items: center; padding: 0px clamp(8px, 1vw, 15px); color: rgb(48, 41, 44); font: 500 12px/1.4 var(--font-ui); letter-spacing: 0px; text-transform: none; white-space: nowrap; transition: color 0.2s;}
.topbar .navlinks a:first-child{color: rgb(109, 53, 72);}
.topbar .navlinks a + a{border-left: 1px solid rgba(167, 125, 53, 0.26);}
.topbar .navlinks a:hover, .topbar .navlinks a:focus-visible, .topbar .navlinks a.active{color: var(--pink);}
.topbar .nav-cta.contact-button{display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 11px; margin-left: 5px; padding: 0px 18px; border: 1px solid var(--pink); border-radius: 5px; background: var(--pink); color: rgb(255, 255, 255); font: 600 10px/1 var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; white-space: nowrap; box-shadow: rgba(100, 19, 54, 0.11) 0px 8px 20px; transition: background 0.2s, border-color 0.2s, transform 0.2s, box-shadow 0.2s;}
.topbar .nav-cta.contact-button:hover{transform: translateY(-1px); border-color: rgb(163, 21, 77); background: rgb(163, 21, 77); box-shadow: rgba(100, 19, 54, 0.16) 0px 10px 22px;}
.topbar .menu-toggle{display: none; width: 42px; height: 42px; place-items: center; margin-left: auto; border: 1px solid rgba(80, 16, 47, 0.2); border-radius: 50%; background: rgba(255, 255, 255, 0.52); color: var(--plum); font-size: 22px; line-height: 1; cursor: pointer;}
.page-hero{position: relative; padding: clamp(54px, 7vw, 92px) 0px clamp(24px, 3vw, 40px); text-align: left;}
.page-hero::after{position: absolute; right: 0px; bottom: 0px; left: 0px; height: 1px; background: linear-gradient(90deg, transparent, rgba(167, 125, 53, 0.32), transparent); content: "";}
.page-hero > .display{max-width: 960px; margin: 13px 0px 15px; color: var(--ink); font-size: clamp(54px, 7vw, 88px); line-height: 0.98;}
.page-hero .lead, .page-hero .small-copy{max-width: 700px; margin: 14px 0px 0px; color: rgb(80, 70, 72); font-size: 17px; line-height: 1.72;}
.page-home .topbar{position: absolute; inset: 0px 0px auto; background: linear-gradient(rgba(255, 250, 246, 0.98), rgba(255, 250, 246, 0.94) 72%, rgba(255, 250, 246, 0.78)); border: 0px; box-shadow: rgba(44, 28, 32, 0.043) 0px 6px 25px;}
.page-home .nav{height: 112px; min-height: 112px;}
.page-home .hero{position: relative; isolation: isolate; display: flex; width: 100%; min-width: 0px; max-width: none; min-height: max(740px, 100svh); height: auto; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 24px; margin: 0px; padding: clamp(160px, 20vh, 205px) max(38px, -680px + 50vw) 35px; overflow: hidden; background: var(--cream);}
.page-home .hero-copy{position: relative; z-index: 2; width: min(790px, 57%); max-width: 790px; padding: 0px;}
.page-home .hero .eyebrow{color: rgb(96, 51, 73); font: 600 10px/1.9 var(--font-ui); letter-spacing: 0.32em; text-shadow: none;}
.page-home .hero .title-rule{width: 52px; margin: 17px 0px 22px; border-top: 2px solid var(--pink);}
.page-home .hero .hero-title{max-width: 790px; margin: 0px 0px 18px; color: rgb(40, 35, 38); font: 500 clamp(57px,6.1vw,88px)/.94 var(--font-heading); letter-spacing: -0.03em; text-wrap: balance;}
.page-home .hero .hero-title .line{display: block; overflow: visible; padding: 0px;}
.page-home .hero .hero-title .line > span{display: block;}
.page-home .hero .hero-title .accent{color: var(--pink); font-weight: 500;}
.page-home .hero .hero-description{max-width: 650px; margin: 0px; color: rgb(52, 45, 48); font: 400 clamp(16px,1.3vw,18px)/1.72 var(--font-body); letter-spacing: 0px; text-shadow: rgba(255, 250, 246, 0.75) 0px 1px 3px;}
.page-home .hero .actions{display: flex; flex-wrap: wrap; gap: 13px; margin-top: 24px;}
.page-home .hero .actions .btn{min-height: 56px; padding: 0px 24px; border-radius: 5px; font: 600 10px/1 var(--font-ui); letter-spacing: 0.08em; box-shadow: rgba(80, 11, 43, 0.09) 0px 7px 19px; transition: transform 0.2s, box-shadow 0.2s, background 0.2s, border-color 0.2s;}
.page-home .hero .actions .btn:first-child{min-width: clamp(210px, 18vw, 270px); border-color: var(--pink); background: var(--pink); color: rgb(255, 255, 255);}
.page-home .hero .actions .btn:first-child:hover{transform: translateY(-2px); border-color: rgb(163, 21, 77); background: rgb(163, 21, 77); box-shadow: rgba(80, 11, 43, 0.15) 0px 11px 24px;}
.page-home .hero .actions .btn.outline{min-width: clamp(235px, 22vw, 310px); border-color: rgb(155, 113, 54); background: rgba(255, 250, 246, 0.76); color: rgb(57, 46, 48); box-shadow: none;}
.page-home .hero .actions .btn.outline:hover{transform: translateY(-2px); border-color: rgb(118, 45, 69); background: rgb(255, 250, 246); color: rgb(118, 45, 69);}
.page-home .hero-image{position: absolute; z-index: -1; inset: 0px; width: 100%; height: 100%; margin: 0px; overflow: hidden;}
.page-home .hero-image img{width: 100%; height: 100%; transform: scale(1.025); border: 0px; border-radius: 0px; object-fit: cover; object-position: 54% center;}
.page-home .hero-image::after{position: absolute; z-index: 1; inset: 0px; width: auto; border: 0px; border-radius: 0px; background: linear-gradient(rgba(251, 245, 239, 0.68), rgba(251, 245, 239, 0) 23%), linear-gradient(0deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.68) 7%, rgba(251, 245, 239, 0) 26%), linear-gradient(90deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.98) 19%, rgba(251, 245, 239, 0.89) 37%, rgba(251, 245, 239, 0.63) 51%, rgba(251, 245, 239, 0.18) 70%, transparent 86%); content: "";}
.page-home .hero::after{position: absolute; z-index: 1; inset: auto 0px -1px; height: 42px; pointer-events: none; background: linear-gradient(rgba(251, 245, 239, 0), rgb(251, 245, 239)); content: "";}
.page-home .hero-trustbar{position: relative; z-index: 3; inset: auto; display: grid; width: min(1120px, 100%); max-width: 100%; grid-template-columns: repeat(5, minmax(0px, 1fr)); align-items: center; justify-content: stretch; gap: 0px; margin: 20px 0px 0px; padding: 0px; border: 0px; border-radius: 0px; background: transparent; box-shadow: none; backdrop-filter: none;}
.page-home .hero-trustbar .trust-item{display: flex; min-width: 0px; min-height: 48px; align-items: center; justify-content: flex-start; gap: 10px; padding: 5px 13px; border-width: 0px 1px 0px 0px; border-style: none solid none none; border-color: currentcolor rgba(138, 100, 38, 0.25) currentcolor currentcolor; border-image: none; background: transparent; color: rgb(48, 41, 44); text-align: left; white-space: normal;}
.page-home .hero-trustbar .trust-item:first-child{padding-left: 0px;}
.page-home .hero-trustbar .trust-icon{display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border: 0px; border-radius: 0px; background: transparent; color: rgb(144, 106, 50); filter: none;}
.page-home .hero-trustbar .trust-icon svg{width: 29px; height: 29px; fill: none; stroke: currentcolor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round;}
.page-home .hero-trustbar .age-item .trust-label{color: rgb(111, 46, 69); font: 600 13px/1.3 var(--font-ui); letter-spacing: 0.02em;}
.page-home .hero-trustbar .trust-label{color: rgb(52, 45, 48); font: 500 12px/1.45 var(--font-body); letter-spacing: 0px; text-transform: none; -webkit-text-stroke: 0px; paint-order: normal; text-shadow: rgba(255, 250, 246, 0.85) 0px 1px 2px;}
.page-home .testimonial-full{margin-top: 13px; padding-top: 10px; border-top: 1px solid rgba(167, 125, 53, 0.24);}
.page-home .testimonial-full summary{display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; list-style: none; color: rgb(118, 85, 45); font: 600 11px/1.5 var(--font-ui); letter-spacing: 0.025em;}
.page-home .testimonial-full summary::-webkit-details-marker{display: none;}
.page-home .testimonial-full summary::after{display: grid; width: 23px; height: 23px; flex: 0 0 23px; place-items: center; border: 1px solid rgba(167, 125, 53, 0.44); border-radius: 50%; color: rgb(118, 85, 45); font: 500 15px/1 var(--font-ui); content: "+";}
.page-home .testimonial-full[open] summary::after{content: "−";}
.page-home .testimonial-full > div{padding-top: 10px; color: rgb(64, 56, 58);}
.page-about main{overflow: clip; background: var(--cream);}
.page-gallery .page-hero{padding-bottom: 35px;}
.page-gallery .page-hero > .display{font-size: clamp(58px, 7vw, 88px);}
.page-gallery .lightbox{z-index: 60; background: rgba(30, 19, 23, 0.94); backdrop-filter: blur(10px);}
.page-gallery .lightbox img{max-width: min(90vw, 1500px); max-height: 86vh; border: 1px solid rgba(255, 250, 246, 0.24); border-radius: 2px; box-shadow: rgba(0, 0, 0, 0.3) 0px 25px 80px;}
.page-gallery .lightbox-close{top: 24px; right: 28px; color: rgb(255, 250, 246);}
.page-contact .contact-form{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); align-content: start; gap: 19px 20px; padding: 7px 0px;}
.page-contact .field{display: flex; min-width: 0px; flex-direction: column; gap: 7px;}
.page-contact .field.full{grid-column: 1 / -1;}
.page-contact .field label{color: rgb(54, 46, 48); font: 600 12px/1.4 var(--font-ui); letter-spacing: 0.015em;}
.page-contact .field input, .page-contact .field select, .page-contact .field textarea{width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid rgba(148, 111, 70, 0.42); border-radius: 2px; background: rgba(255, 250, 246, 0.76); color: rgb(40, 35, 38); font: 400 15px/1.5 var(--font-body); transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;}
.page-contact .field textarea{min-height: 145px; resize: vertical;}
.page-contact .field input:focus, .page-contact .field select:focus, .page-contact .field textarea:focus{border-color: rgb(154, 107, 53); background: rgb(255, 250, 246); box-shadow: rgba(167, 125, 53, 0.12) 0px 0px 0px 3px; outline: 0px;}
.page-contact .form-status{grid-column: 1 / -1; margin: 0px; color: rgb(79, 61, 67); font-size: 14px; line-height: 1.6;}
.footer{position: relative; padding: 34px 24px 30px; border-top: 1px solid rgba(167, 125, 53, 0.22); background: linear-gradient(rgb(248, 239, 233), rgb(244, 232, 225)); color: rgb(83, 72, 74); font: 500 10px/1.6 var(--font-ui); letter-spacing: 0.08em; text-align: center;}
.page-home .footer{background: linear-gradient(rgb(248, 239, 233), rgb(244, 232, 225)); color: rgb(83, 72, 74);}
.js .reveal{opacity: 0; transform: translate3d(0px, 12px, 0px); transition: opacity 0.58s, transform 0.58s cubic-bezier(0.22, 0.62, 0.28, 1);}
.js .reveal.in-view{opacity: 1; transform: translate3d(0px, 0px, 0px);}
.js .reveal[data-delay="1"]{transition-delay: 0.07s;}
.js .reveal[data-delay="2"]{transition-delay: 0.13s;}
@media (prefers-reduced-motion: no-preference){
  .page-home .hero-image img{animation: 36s ease-in-out 0s infinite alternate none running studio-drift;}
}
@keyframes studio-drift { 
  0% { transform: scale(1.025) translateY(0px); }
  100% { transform: scale(1.045) translateY(-0.35%); }
}
@media (max-width: 1180px){
  :root{--content: min(100% - 52px,1100px);}
  .topbar .nav{width: calc(100% - 56px); height: 90px; min-height: 90px;}
  .topbar .brand{min-width: 0px;}
  .topbar .navlinks{display: none; position: absolute; top: calc(100% - 1px); left: 0px; right: 0px; z-index: 4; flex-direction: column; align-items: stretch; padding: 10px 18px; border-width: 0px 1px 1px; border-style: none solid solid; border-color: currentcolor rgba(167, 125, 53, 0.3) rgba(167, 125, 53, 0.3); border-image: none; border-radius: 0px 0px 5px 5px; background: rgba(255, 250, 246, 0.99); box-shadow: rgba(40, 25, 30, 0.11) 0px 14px 28px;}
  .topbar .navlinks.open{display: flex;}
  .topbar .navlinks a{min-height: 45px; padding: 10px 7px; font-size: 13px;}
  .topbar .navlinks a + a{border-width: 1px 0px 0px; border-style: solid none none; border-color: rgba(167, 125, 53, 0.2) currentcolor currentcolor; border-image: none;}
  .topbar .nav-cta.contact-button{display: none;}
  .topbar .menu-toggle{display: grid;}
  .page-home .hero{min-height: max(720px, 100svh); padding: 142px 34px 28px;}
  .page-home .hero-copy{width: min(720px, 68%);}
  .page-home .hero .hero-title{font-size: clamp(54px, 6.5vw, 76px);}
  .page-home .hero-trustbar{grid-template-columns: repeat(3, minmax(0px, 1fr)); width: min(860px, 100%); margin-top: 24px;}
  .page-home .hero-trustbar .trust-item{min-height: 45px; padding: 6px 9px; border-top: 1px solid rgba(138, 100, 38, 0.2);}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 9px;}
  .page-home .hero-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(n+4){border-top: 1px solid rgba(138, 100, 38, 0.2);}
  .page-home .hero-trustbar .trust-label{font-size: 11px;}
}
@media (max-width: 820px){
  :root{--content: calc(100% - 44px);}
  .section{padding-block: 62px;}
  .page-home .hero{min-height: max(680px, 100svh); padding: 132px 28px 25px;}
  .page-home .hero-copy{width: min(680px, 74%);}
  .page-home .hero .hero-title{font-size: clamp(50px, 7vw, 68px);}
  .page-home .hero .hero-description{max-width: 560px; font-size: 16px;}
  .page-home .hero-trustbar{grid-template-columns: repeat(3, minmax(0px, 1fr)); width: min(750px, 100%);}
}
@media (max-width: 620px){
  :root{--content: calc(100% - 36px);}
  html{scroll-padding-top: 84px;}
  body{font-size: 15px; line-height: 1.68;}
  .topbar .nav{width: calc(100% - 34px); height: 82px; min-height: 82px;}
  .topbar .brand{gap: 7px;}
  .topbar .brand-mark{width: 31px; height: 42px; flex-basis: 31px;}
  .topbar .brand-type > span{font-size: 23px;}
  .topbar .brand-type > small{font-size: 8px; gap: 7px;}
  .topbar .brand-type > small::before, .topbar .brand-type > small::after{width: 35px;}
  .topbar .menu-toggle{width: 39px; height: 39px;}
  .topbar .navlinks{left: 0px; right: 0px;}
  .section{padding-block: 53px;}
  .section-head{margin-bottom: 26px;}
  .section-head .display{font-size: clamp(37px, 10vw, 48px);}
  .lead, .small-copy, .body-copy p{font-size: 15px; line-height: 1.75;}
  .page-hero{padding: 45px 0px 21px;}
  .page-hero > .display{font-size: clamp(46px, 12vw, 62px); line-height: 1;}
  .page-hero .lead, .page-hero .small-copy{font-size: 15px;}
  .page-home .topbar{background: rgba(255, 250, 246, 0.97);}
  .page-home .nav{height: 82px; min-height: 82px;}
  .page-home .hero{min-height: 0px; padding: 118px 18px 23px; gap: 16px;}
  .page-home .hero-copy{width: 100%; padding: 0px;}
  .page-home .hero .eyebrow{font-size: 9px; letter-spacing: 0.24em;}
  .page-home .hero .title-rule{margin: 13px 0px 17px;}
  .page-home .hero .hero-title{max-width: 580px; margin-bottom: 13px; font-size: clamp(44px, 11.2vw, 61px); line-height: 0.96;}
  .page-home .hero .hero-description{max-width: 520px; font-size: 15px; line-height: 1.68;}
  .page-home .hero .actions{gap: 9px; margin-top: 18px;}
  .page-home .hero .actions .btn{width: 100%; min-height: 49px; padding-inline: 15px; font-size: 9px;}
  .page-home .hero .actions .btn:first-child, .page-home .hero .actions .btn.outline{min-width: 0px;}
  .page-home .hero-image{inset: 0px; z-index: -1; width: 100%; height: 100%;}
  .page-home .hero-image img{object-position: 62% center;}
  .page-home .hero-image::after{background: linear-gradient(rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.97) 34%, rgba(251, 245, 239, 0.84) 54%, rgba(251, 245, 239, 0.35) 79%, rgba(251, 245, 239, 0.12) 100%), linear-gradient(90deg, rgba(251, 245, 239, 0.28), transparent 100%);}
  .page-home .hero::after{height: 24px;}
  .page-home .hero-trustbar{width: 100%; grid-template-columns: 1fr 1fr; margin: 6px 0px 0px;}
  .page-home .hero-trustbar .trust-item{min-height: 43px; gap: 8px; padding: 6px 8px; border-top: 1px solid rgba(138, 100, 38, 0.22); border-right: 1px solid rgba(138, 100, 38, 0.18); white-space: normal;}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 8px;}
  .page-home .hero-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(5){grid-column: 1 / -1; border-right: 0px;}
  .page-home .hero-trustbar .trust-icon{width: 27px; height: 27px; flex-basis: 27px;}
  .page-home .hero-trustbar .trust-icon svg{width: 25px; height: 25px;}
  .page-home .hero-trustbar .trust-label{font-size: 10px; line-height: 1.4;}
  .page-home .hero-trustbar .age-item .trust-label{font-size: 11px;}
  .page-gallery .page-hero > .display{font-size: clamp(50px, 13vw, 68px);}
  .page-contact .contact-form{grid-template-columns: 1fr; gap: 15px;}
  .page-contact .field.full, .page-contact .contact-form > .btn, .page-contact .form-status{grid-column: auto;}
  .footer{padding: 28px 18px 24px; font-size: 9px;}
}
@media (max-width: 390px){
  :root{--content: calc(100% - 30px);}
  .topbar .nav{width: calc(100% - 28px);}
  .topbar .brand-type > span{font-size: 21px;}
  .topbar .brand-mark{width: 28px; height: 39px; flex-basis: 28px;}
  .page-home .hero{padding-inline: 15px;}
  .page-home .hero .hero-title{font-size: 43px;}
  .page-home .hero-trustbar .trust-item{padding-inline: 5px;}
  .page-home .hero-trustbar .trust-label{font-size: 9px;}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior: auto;}
  *, ::before, ::after{animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: 0.01ms !important;}
  .js .reveal, .js .reveal.in-view{opacity: 1; transform: none;}
}
.page-home .hero{padding-inline: max(44px, -670px + 50vw);}
.page-home .hero-copy{width: min(780px, 58%);}
.page-home .hero-image img{transform: scale(1.008); object-position: 57% 48%;}
.page-home .hero-image::after{background: linear-gradient(rgba(251, 245, 239, 0.58), transparent 20%), linear-gradient(0deg, rgba(251, 245, 239, 0.68) 0%, rgba(251, 245, 239, 0.31) 15%, rgba(251, 245, 239, 0) 38%), linear-gradient(90deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.98) 18%, rgba(251, 245, 239, 0.9) 36%, rgba(251, 245, 239, 0.72) 51%, rgba(251, 245, 239, 0.34) 65%, rgba(251, 245, 239, 0.08) 79%, transparent 91%);}
.page-home .hero-trustbar{width: min(1080px, 100%); max-width: 100%; grid-template-columns: repeat(5, max-content); justify-content: start; gap: 0px; margin-top: 18px;}
.page-home .hero-trustbar .trust-item{min-width: 0px; min-height: 46px; gap: 8px; padding: 5px 13px; border-right: 1px solid rgba(138, 100, 38, 0.19);}
.page-home .hero-trustbar .trust-item:first-child{min-width: 58px; padding-left: 0px;}
.page-home .hero-trustbar .trust-item:last-child{border-right: 0px;}
.page-home .hero-trustbar .trust-icon{width: 25px; height: 25px; flex-basis: 25px; color: rgb(135, 101, 47);}
.page-home .hero-trustbar .trust-icon svg{width: 23px; height: 23px; stroke-width: 1.35;}
.page-home .hero-trustbar .age-item .trust-label{color: rgb(101, 67, 38); font: 500 17px/1 var(--font-heading); letter-spacing: 0.01em;}
.page-home .hero-trustbar .trust-label{color: rgb(51, 45, 46); font: 500 12px/1.4 var(--font-body); letter-spacing: 0px; text-shadow: rgba(255, 250, 246, 0.8) 0px 1px 3px;}
.page-home .hero .hero-description{max-width: 630px; color: rgb(52, 45, 48); text-shadow: rgba(255, 250, 246, 0.68) 0px 1px 3px;}
.page-comparison .comparison-section{position: relative; padding: clamp(42px, 6vw, 70px) 0px clamp(52px, 7vw, 82px); background: linear-gradient(rgb(251, 245, 239) 0%, rgb(248, 239, 233) 30%, rgb(246, 236, 230) 100%);}
.page-comparison .comparison-intro{max-width: 740px; margin: 0px auto 25px; text-align: center;}
.page-comparison .comparison-intro .eyebrow{font-size: 11px; letter-spacing: 0.23em;}
.page-comparison .comparison-intro > p{margin: 9px 0px 0px; color: rgb(81, 72, 73); font-size: 15px; line-height: 1.72;}
.page-comparison .comparison-scroll{position: relative; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; border-top: 1px solid rgba(154, 112, 59, 0.42); border-bottom: 1px solid rgba(154, 112, 59, 0.3); scrollbar-color: rgba(145, 104, 52, 0.55) rgba(255, 250, 246, 0.4); scrollbar-width: thin;}
.page-comparison .premium-comparison-table{width: 100%; min-width: 930px; border-collapse: separate; border-spacing: 0px; table-layout: fixed; color: rgb(56, 48, 51);}
.page-comparison .premium-comparison-table th, .page-comparison .premium-comparison-table td{padding: 15px 17px; border-bottom: 1px solid rgba(154, 112, 59, 0.16); text-align: left; vertical-align: middle;}
.page-comparison .premium-comparison-table thead th{height: 89px; padding-top: 17px; padding-bottom: 16px; color: rgb(118, 84, 46); font: 600 11px/1.35 var(--font-ui); letter-spacing: 0.08em;}
.page-comparison .premium-comparison-table thead th:first-child{width: 20%; color: rgb(88, 73, 74); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase;}
.page-comparison .premium-comparison-table thead th span{display: inline-block; margin-top: 5px; color: rgb(91, 80, 80); font-size: 8px; letter-spacing: 0.14em;}
.page-comparison .premium-comparison-table .studio-column{background: rgba(255, 250, 246, 0.52); box-shadow: rgba(167, 125, 53, 0.2) 1px 0px inset, rgba(167, 125, 53, 0.2) -1px 0px inset;}
.page-comparison .premium-comparison-table thead .studio-column{background: rgba(255, 250, 246, 0.74); box-shadow: rgba(167, 125, 53, 0.35) 1px 0px inset, rgba(167, 125, 53, 0.35) -1px 0px inset, rgb(167, 125, 53) 0px 2px inset;}
.page-comparison .premium-comparison-table tbody tr:last-child th, .page-comparison .premium-comparison-table tbody tr:last-child td{border-bottom: 0px;}
.page-comparison .premium-comparison-table tbody th{position: sticky; left: 0px; z-index: 2; width: 20%; background: rgb(248, 239, 233); color: rgb(57, 48, 51); font: 600 12px/1.45 var(--font-ui); letter-spacing: 0.005em;}
.page-comparison .premium-comparison-table td{color: rgb(81, 72, 73); font: 400 14px/1.58 var(--font-body);}
.page-comparison .table-status{display: flex; align-items: flex-start; gap: 8px; color: rgb(57, 48, 51);}
.page-comparison .table-status svg{width: 17px; height: 17px; flex: 0 0 17px; margin-top: 2px; fill: none; stroke: rgb(140, 104, 50); stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round;}
.page-comparison .premium-comparison-table tbody tr:hover th, .page-comparison .premium-comparison-table tbody tr:hover td{background-color: rgba(255, 255, 255, 0.34);}
.page-comparison .premium-comparison-table tbody tr:hover .studio-column{background-color: rgba(255, 250, 246, 0.74);}
.page-comparison .routes-section{padding: clamp(58px, 7vw, 90px) 0px clamp(68px, 8vw, 102px); background: linear-gradient(rgb(246, 236, 230) 0%, rgb(248, 239, 233) 48%, rgb(251, 245, 239) 100%);}
.page-comparison .routes-section .section-head{margin-bottom: 29px;}
.page-comparison .routes-section .section-head .display{font-size: clamp(38px, 4.8vw, 58px);}
.page-comparison .route-notes-grid{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 0px; border-top: 1px solid rgba(154, 112, 59, 0.34);}
.page-comparison .route-note{min-width: 0px; padding: 24px 24px 10px; border-right: 1px solid rgba(154, 112, 59, 0.2);}
.page-comparison .route-note:last-child{padding-right: 0px; border-right: 0px;}
.page-comparison .route-note.is-studio{background: linear-gradient(rgba(255, 250, 246, 0.4), rgba(255, 250, 246, 0.08));}
.page-comparison .route-note-heading{display: flex; align-items: flex-start; gap: 12px; padding-bottom: 15px; border-bottom: 1px solid rgba(154, 112, 59, 0.2);}
.page-comparison .route-note-heading > span{color: rgb(152, 112, 59); font: 500 22px/1 var(--font-heading);}
.page-comparison .route-note-heading h3{margin: 0px; color: rgb(48, 40, 43); font: 500 25px/1.05 var(--font-heading);}
.page-comparison .route-note-group{padding: 14px 0px 12px; border-bottom: 1px solid rgba(154, 112, 59, 0.16);}
.page-comparison .route-note-group:last-child{border-bottom: 0px;}
.page-comparison .route-note-group h4{display: flex; align-items: center; gap: 8px; margin: 0px 0px 8px; color: rgb(120, 87, 46); font: 600 9px/1.5 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase;}
.page-comparison .route-note-group h4 svg{width: 16px; height: 16px; fill: none; stroke: rgb(140, 104, 50); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round;}
.page-comparison .route-note-group.is-caution h4 svg{width: 14px; height: 14px;}
.page-comparison .route-note-group ul{display: grid; gap: 7px; margin: 0px; padding: 0px; list-style: none;}
.page-comparison .route-note-group li{position: relative; padding-left: 13px; color: rgb(81, 72, 73); font: 400 13px/1.62 var(--font-body);}
.page-comparison .route-note-group li::before{position: absolute; top: 0.69em; left: 0px; width: 4px; height: 4px; border-radius: 50%; background: rgb(170, 133, 83); content: "";}
.page-home .hero-trustbar .trust-icon, .page-home .offerings-grid .offering-icon{color: rgb(138, 105, 58);}
.offering-icon svg, .trust-icon svg, .realization-slot-media svg{stroke: currentcolor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round;}
@media (max-width: 1180px){
  .page-home .hero{padding-inline: 34px;}
  .page-home .hero-trustbar{grid-template-columns: repeat(3, max-content); width: min(100%, 760px);}
  .page-home .hero-trustbar .trust-item:nth-child(3){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(n+4){border-top: 1px solid rgba(138, 100, 38, 0.17);}
  .page-comparison .route-notes-grid{grid-template-columns: repeat(2, minmax(0px, 1fr));}
  .page-comparison .route-note:nth-child(2){border-right: 0px;}
  .page-comparison .route-note:last-child{grid-column: 1 / -1; padding-inline: 0px; border-top: 1px solid rgba(154, 112, 59, 0.2);}
}
@media (max-width: 820px){
  .page-home .hero{padding-inline: 28px;}
  .page-home .hero-trustbar{grid-template-columns: repeat(3, max-content); width: min(100%, 700px);}
  .page-home .hero-trustbar .trust-item{padding-inline: 11px;}
  .page-home .hero-trustbar .trust-item:first-child{padding-left: 0px;}
  .page-comparison .route-notes-grid{grid-template-columns: 1fr;}
  .page-comparison .route-note, .page-comparison .route-note:first-child, .page-comparison .route-note:last-child{grid-column: auto; padding: 21px 0px; border-right: 0px; border-top: 1px solid rgba(154, 112, 59, 0.2);}
  .page-comparison .route-note:first-child{border-top: 0px;}
  .page-comparison .route-note-heading h3{font-size: 28px;}
}
@media (max-width: 620px){
  .page-home .hero{display: flex; flex-direction: column; align-items: stretch; padding-inline: 18px;}
  .page-home .hero-copy{width: 100%;}
  .page-home .hero-image{position: relative; z-index: 1; inset: auto; width: calc(100% + 36px); height: clamp(210px, 68vw, 280px); margin: 0px -18px; overflow: hidden;}
  .page-home .hero-image img{transform: none; object-position: 60% 47%;}
  .page-home .hero-image::after{background: linear-gradient(rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.58) 13%, transparent 35%), linear-gradient(0deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.46) 19%, transparent 48%), linear-gradient(90deg, rgba(251, 245, 239, 0.2), transparent 24%, transparent 80%, rgba(251, 245, 239, 0.16));}
  .page-home .hero-trustbar{grid-template-columns: repeat(2, minmax(0px, 1fr)); width: 100%; max-width: 460px; gap: 0px; margin: 6px auto 0px; position: relative; z-index: 2; margin-top: -34px;}
  .page-home .hero-trustbar .trust-item{min-height: 43px; justify-content: flex-start; padding: 6px 9px; border-top: 1px solid rgba(138, 100, 38, 0.17); border-right: 1px solid rgba(138, 100, 38, 0.15);}
  .page-home .hero-trustbar .trust-item:first-child{min-width: 0px; padding-left: 9px;}
  .page-home .hero-trustbar .trust-item:nth-child(2n){border-right: 0px;}
  .page-home .hero-trustbar .trust-item:nth-child(5){grid-column: 1 / -1; border-right: 0px;}
  .page-home .hero-trustbar .trust-icon{width: 23px; height: 23px; flex-basis: 23px;}
  .page-home .hero-trustbar .trust-icon svg{width: 21px; height: 21px;}
  .page-home .hero-trustbar .age-item .trust-label{font-size: 16px;}
  .page-home .hero-trustbar .trust-label{font-size: 11px;}
  .page-comparison .comparison-section{padding: 38px 0px 54px;}
  .page-comparison .comparison-intro{margin-bottom: 19px; text-align: left;}
  .page-comparison .comparison-intro > p{font-size: 14px;}
  .page-comparison .comparison-scroll{margin-inline: -3px;}
  .page-comparison .premium-comparison-table{min-width: 850px;}
  .page-comparison .premium-comparison-table th, .page-comparison .premium-comparison-table td{padding: 13px 12px;}
  .page-comparison .premium-comparison-table thead th{height: 78px; font-size: 10px;}
  .page-comparison .premium-comparison-table tbody th{font-size: 11px;}
  .page-comparison .premium-comparison-table td{font-size: 13px;}
  .page-comparison .routes-section{padding-block: 52px 66px;}
  .page-comparison .routes-section .section-head{text-align: left;}
  .page-comparison .routes-section .section-head .display{font-size: clamp(37px, 10vw, 48px);}
  .page-comparison .route-note{padding-block: 19px;}
  .page-comparison .route-note-heading h3{font-size: 25px;}
}
@media (prefers-reduced-motion: reduce){
  .page-home .hero-image img{animation: auto ease 0s 1 normal none running none;}
}
:root, body.page-home{--cream: #fbf5ef; --paper: #fffaf6; --blush: #f6ece6; --ink: #282326; --muted: #574e4e; --pink: #c2185b; --pink-hover: #a3154d; --plum: #50102f; --plum-deep: #3a0d24; --gold: #98703b; --gold-text: #7c5a2c; --gold-soft: #e6c98f; --line: #e5cdb6; --font-heading: "Playfair Display",Georgia,serif; --font-body: "Lato",Arial,sans-serif; --font-ui: "Montserrat",Arial,sans-serif;}
.display, .page-home .hero .hero-title, .page-hero > .display, .section-head .display{font-weight: 400; letter-spacing: -0.015em;}
.btn:hover{background: var(--pink-hover); border-color: var(--pink-hover);}
.btn.outline:hover{background: var(--paper); border-color: var(--plum); color: var(--plum);}
.page-home .hero-image::after{background: linear-gradient(rgba(251, 245, 239, 0.96) 0px, rgba(251, 245, 239, 0.86) 112px, rgba(251, 245, 239, 0.45) 200px, rgba(251, 245, 239, 0) 36%), linear-gradient(0deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.7) 8%, rgba(251, 245, 239, 0) 28%), linear-gradient(90deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.97) 28%, rgba(251, 245, 239, 0.9) 42%, rgba(251, 245, 239, 0.55) 56%, rgba(251, 245, 239, 0.12) 74%, transparent 88%);}
.page-home .hero .hero-description{color: rgb(46, 39, 42); text-shadow: none;}
.page-home .hero .hero-title{font-size: clamp(50px, 5.2vw, 78px); line-height: 1;}
@media (min-width: 821px){
  .page-home .hero-copy{width: min(680px, 47%);}
}
.cta-band{padding: clamp(48px, 6vw, 84px) 0px clamp(56px, 7vw, 96px);}
.cta-band-card{display: grid; grid-template-columns: minmax(0px, 1.4fr) auto; align-items: center; gap: 28px 48px; padding: clamp(30px, 4vw, 52px) clamp(26px, 4.4vw, 60px); border-radius: 3px 56px 3px 3px; background: linear-gradient(150deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: rgba(58, 13, 36, 0.16) 0px 22px 50px;}
.cta-band .eyebrow{color: var(--gold-soft);}
.cta-band .display{margin: 10px 0px 12px; color: rgb(255, 248, 242); font-size: clamp(36px, 4.2vw, 56px); line-height: 1.04;}
.cta-band .display .accent{color: rgb(244, 184, 207);}
.cta-band p{max-width: 560px; margin: 0px; color: rgb(234, 221, 225); font-size: 16px; line-height: 1.7;}
.cta-band-actions{display: flex; flex-direction: column; gap: 12px; min-width: 240px;}
.cta-band-actions .btn{min-height: 54px; width: 100%;}
.cta-band-actions .btn.outline{border-color: rgba(230, 201, 143, 0.7); background: transparent; color: rgb(255, 244, 231);}
.cta-band-actions .btn.outline:hover{border-color: var(--gold-soft); background: rgba(255, 248, 242, 0.08); color: rgb(255, 255, 255);}
.site-footer{padding: clamp(48px, 6vw, 72px) 0px 0px; border-top: 1px solid rgba(167, 125, 53, 0.22); background: linear-gradient(rgb(248, 239, 233), rgb(243, 230, 223)); color: rgb(83, 72, 74); font: 400 14px/1.6 var(--font-body); letter-spacing: 0px; text-align: left;}
.footer-grid{display: grid; grid-template-columns: minmax(0px, 1.5fr) repeat(3, minmax(0px, 1fr)); gap: 36px;}
.footer-logo{display: inline-flex; align-items: center; gap: 10px; color: var(--pink);}
.footer-logo img{width: 34px; height: auto;}
.footer-logo span{display: flex; flex-direction: column; line-height: 1;}
.footer-logo strong{font: 400 24px/1 var(--font-heading); letter-spacing: 0.015em;}
.footer-logo small{margin-top: 5px; color: var(--gold-text); font: 500 9px/1 var(--font-ui); letter-spacing: 0.48em; text-align: center;}
.footer-brand p{max-width: 330px; margin: 16px 0px 0px; color: rgb(93, 82, 84); font-size: 14px; line-height: 1.7;}
.footer-col{display: flex; flex-direction: column; align-items: flex-start; gap: 9px;}
.footer-col h3{margin: 4px 0px 6px; color: var(--gold-text); font: 600 10px/1.5 var(--font-ui); letter-spacing: 0.2em; text-transform: uppercase;}
.footer-col a, .footer-col .footer-meta{display: inline-flex; align-items: center; gap: 9px; color: rgb(70, 60, 63); font: 500 13px/1.5 var(--font-ui); transition: color 0.18s;}
.footer-col a:hover, .footer-col a:focus-visible{color: var(--pink);}
.footer-col svg{width: 17px; height: 17px; flex: 0 0 17px; fill: none; stroke: var(--gold); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round;}
.footer-bottom{display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; margin-top: clamp(36px, 4vw, 52px); padding: 20px 0px 84px; border-top: 1px solid rgba(167, 125, 53, 0.2); color: rgb(107, 95, 96); font: 500 11px/1.6 var(--font-ui); letter-spacing: 0.02em;}
.whatsapp-float{position: fixed; z-index: 40; right: 22px; bottom: 22px; display: inline-flex; align-items: center; gap: 9px; min-height: 50px; padding: 0px 18px 0px 14px; border-radius: 999px; background: var(--plum); color: rgb(255, 248, 242); font: 600 11px/1 var(--font-ui); letter-spacing: 0.08em; text-transform: uppercase; box-shadow: rgba(58, 13, 36, 0.25) 0px 12px 28px; transition: transform 0.2s, background 0.2s;}
.whatsapp-float svg{width: 22px; height: 22px; fill: none; stroke: currentcolor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round;}
.whatsapp-float:hover{transform: translateY(-2px); background: var(--pink);}
@media (max-width: 1180px){
  .footer-grid{grid-template-columns: repeat(3, minmax(0px, 1fr));}
  .footer-brand{grid-column: 1 / -1;}
}
@media (min-width: 621px) and (max-width: 820px){
  .page-home .hero-image img{object-position: 48% center;}
  .page-home .hero-image::after{display: block; background: linear-gradient(rgba(251, 245, 239, 0.75), rgba(251, 245, 239, 0) 26%), linear-gradient(0deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.7) 9%, rgba(251, 245, 239, 0) 30%), linear-gradient(90deg, rgb(251, 245, 239) 0%, rgba(251, 245, 239, 0.97) 40%, rgba(251, 245, 239, 0.88) 58%, rgba(251, 245, 239, 0.45) 74%, transparent 92%);}
}
@media (max-width: 820px){
  .cta-band-card{grid-template-columns: 1fr;}
  .cta-band-actions{flex-flow: wrap; min-width: 0px;}
  .cta-band-actions .btn{flex: 1 1 200px; width: auto;}
}
@media (max-width: 620px){
  .footer-grid{grid-template-columns: 1fr 1fr; gap: 28px 20px;}
  .footer-col:last-child{grid-column: 1 / -1; flex-flow: wrap; gap: 10px 22px;}
  .footer-col:last-child h3{flex-basis: 100%;}
  .footer-bottom{flex-direction: column;}
  .cta-band-card{border-radius: 3px 36px 3px 3px;}
  .whatsapp-float{right: 14px; bottom: 14px; width: 52px; height: 52px; padding: 0px; justify-content: center;}
  .whatsapp-float span{display: none;}
  .page-comparison .comparison-scroll{overflow: visible; border: 0px;}
  .page-comparison .premium-comparison-table{min-width: 0px; table-layout: auto;}
  .page-comparison .premium-comparison-table thead{display: none;}
  .page-comparison .premium-comparison-table, .page-comparison .premium-comparison-table tbody, .page-comparison .premium-comparison-table tr, .page-comparison .premium-comparison-table th, .page-comparison .premium-comparison-table td{display: block; width: auto;}
  .page-comparison .premium-comparison-table tr{margin: 0px 0px 14px; border: 1px solid rgba(154, 112, 59, 0.24); border-radius: 3px; background: rgba(255, 250, 246, 0.6);}
  .page-comparison .premium-comparison-table tbody th{position: static; width: auto; padding: 13px 14px; background: rgba(239, 224, 212, 0.55); font-size: 13px;}
  .page-comparison .premium-comparison-table td{padding: 11px 14px; border-bottom: 1px solid rgba(154, 112, 59, 0.14);}
  .page-comparison .premium-comparison-table td::before{display: block; margin-bottom: 3px; color: var(--gold-text); font: 600 9px/1.5 var(--font-ui); letter-spacing: 0.12em; text-transform: uppercase; content: attr(data-label);}
  .page-comparison .premium-comparison-table td:last-child{border-bottom: 0px;}
  .page-comparison .premium-comparison-table .studio-column{box-shadow: inset 3px 0 var(--gold);}
}
.page-comparison .comparison-intro > p{max-width: 620px;}
.page-comparison .premium-comparison-table thead th{position: relative; height: auto; padding: 22px 18px 18px; vertical-align: bottom; color: rgb(90, 67, 48);}
.page-comparison .premium-comparison-table thead th span{color: rgb(124, 90, 44);}
.page-comparison .premium-comparison-table thead .studio-column{overflow: visible; border-radius: 3px 3px 0px 0px; background: linear-gradient(160deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: none;}
.page-comparison .premium-comparison-table thead .studio-column span{color: rgb(244, 184, 207);}
.page-comparison .col-badge{display:block;width:max-content;margin:0 0 10px;padding:5px 10px;border-radius:999px;background:var(--pink);color:#fff;font:600 9px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;font-style:normal}
.page-comparison .premium-comparison-table tbody .studio-column{background: rgba(255, 250, 246, 0.85); box-shadow: rgba(80, 16, 47, 0.18) 1px 0px inset, rgba(80, 16, 47, 0.18) -1px 0px inset;}
.page-comparison .premium-comparison-table tbody tr:last-child .studio-column{box-shadow: inset 1px 0 rgba(80,16,47,.18),inset -1px 0 rgba(80,16,47,.18),inset 0 -2px var(--plum);}
.page-comparison .premium-comparison-table tbody tr:hover .studio-column{background-color: rgb(255, 250, 246);}
.page-comparison .table-status svg{width: 17px; height: 17px; flex: 0 0 17px; margin-top: 3px; fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round;}
.page-comparison .studio-column .table-status svg{stroke: var(--pink);}
.page-comparison .table-status.is-partial svg{stroke: rgb(176, 138, 74);}
.page-comparison .table-status.is-neutral svg{stroke: rgb(185, 170, 166);}
.page-comparison .table-status.is-neutral{color: rgb(95, 84, 85);}
@media (max-width: 620px){
  .page-comparison .premium-comparison-table tbody .studio-column{background: rgba(255, 250, 246, 0.9); box-shadow: inset 3px 0 var(--pink);}
  .page-comparison .premium-comparison-table tbody tr:last-child .studio-column{box-shadow: inset 3px 0 var(--pink);}
  .page-comparison .premium-comparison-table .studio-column td::before, .page-comparison .premium-comparison-table td.studio-column::before{color: var(--pink);}
}
.page-comparison .route-notes-grid{align-items: stretch; border-bottom: 1px solid rgba(154, 112, 59, 0.3);}
.page-comparison .route-note{position: relative; display: flex; flex-direction: column; padding: 26px 26px 28px;}
.page-comparison .route-note:first-child{padding-left: 0px;}
.page-comparison .route-note:last-child{padding-right: 0px;}
.page-comparison .route-note.is-studio{background: linear-gradient(rgba(80, 16, 47, 0.07), rgba(80, 16, 47, 0.024) 60%, rgba(80, 16, 47, 0)); box-shadow: inset 0 2px var(--plum);}
.page-comparison .route-note .col-badge{position:absolute;top:-11px;left:22px;display:block;width:max-content;margin:0;padding:5px 10px;border-radius:999px;background:var(--pink);color:#fff;font:600 9px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;font-style:normal}
.page-comparison .route-note-heading{min-height: 0px; align-items: baseline;}
.page-comparison .route-note-heading h3{font-size: clamp(20px, 1.6vw, 23px); line-height: 1.15; white-space: nowrap;}
.page-comparison .route-note-group.is-caution h4{color: rgb(122, 106, 94);}
.page-comparison .route-note-group.is-caution h4 svg{width: 16px; height: 16px; stroke: rgb(168, 156, 148);}
.page-comparison .route-note .route-cta{align-self: flex-start; min-height: 46px; margin-top: auto; padding: 0px 18px; font-size: 9px;}
.page-comparison .route-note-group + .route-cta{margin-top: 22px;}
@media (max-width: 1180px){
  .page-comparison .route-note:last-child{padding-top: 24px;}
  .page-comparison .route-note.is-studio{padding-inline: 20px;}
}
@media (max-width: 620px){
  .page-comparison .route-note, .page-comparison .route-note.is-studio{padding: 21px 0px; background: none; box-shadow: none;}
  .page-comparison .route-note.is-studio{padding: 28px 16px 21px; background: rgba(80, 16, 47, 0.05); box-shadow: inset 3px 0 var(--pink);}
  .page-comparison .route-note .col-badge{top: -9px; left: 16px;}
  .page-comparison .route-note-heading h3{white-space: normal;}
  .page-comparison .route-note .route-cta{width: 100%; margin-top: 18px;}
}
.page-home .topbar{border-bottom: 0px; box-shadow: none; background: linear-gradient(rgba(251, 245, 239, 0.98), rgba(251, 245, 239, 0.95));}
.page-home .topbar::after{content: ""; position: absolute; top: 100%; right: 0px; left: 0px; height: 110px; pointer-events: none; background: linear-gradient(rgba(251, 245, 239, 0.95), rgba(251, 245, 239, 0.72) 38%, rgba(251, 245, 239, 0.3) 72%, rgba(251, 245, 239, 0));}
.page-home .hero{padding-top: clamp(200px, 24vh, 240px);}
@media (min-width: 621px) and (max-width: 1180px){
  .page-home .hero{padding-top: 176px;}
}
.reading-progress{position: fixed; top: 0px; left: 0px; z-index: 60; width: 0px; height: 3px; background: linear-gradient(90deg,var(--pink),#f06292); pointer-events: none; transition: width 0.12s linear;}
.page-article .article-opener{position: relative; overflow: hidden; padding: clamp(36px, 5vw, 64px) 0px clamp(40px, 5.5vw, 72px); background: linear-gradient(rgb(246, 236, 230) 0%, rgb(248, 240, 234) 55%, rgb(251, 245, 239) 100%);}
.page-article .article-opener::before{content: ""; position: absolute; inset: auto -10% -40% auto; width: 60%; aspect-ratio: 1 / 1; border-radius: 50%; background: radial-gradient(circle, rgba(242, 219, 215, 0.55), transparent 62%); pointer-events: none;}
.page-article .article-opener-grid{position: relative; display: grid; grid-template-columns: minmax(0px, 1.15fr) minmax(280px, 0.85fr); align-items: center; gap: clamp(28px, 5vw, 72px);}
.page-article .article-back{display: inline-flex; align-items: center; gap: 8px; margin: 0px 0px 26px; color: rgb(124, 90, 44); font: 600 10px/1 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase; transition: color 0.2s;}
.page-article .article-back:hover{color: var(--pink);}
.page-article .article-opener .display{max-width: 620px; margin: 12px 0px 16px; color: var(--ink); font-size: clamp(36px, 4.6vw, 60px); line-height: 1.02;}
.page-article .article-opener .lead{max-width: 540px; margin: 0px; color: rgb(74, 64, 66); font-size: clamp(16px, 1.2vw, 18px); line-height: 1.75;}
.page-article .article-meta{display: flex; flex-wrap: wrap; margin-top: 20px; color: rgb(122, 108, 106); font: 500 11px/1.5 var(--font-ui); letter-spacing: 0.04em;}
.page-article .article-meta span + span::before{content: "·"; margin: 0px 10px; color: rgb(185, 162, 122);}
.page-article .article-visual{position: relative; isolation: isolate; width: min(100%, 400px); margin: 0px; justify-self: end;}
.page-article .article-visual::before{content: ""; position: absolute; z-index: -1; inset: 16px -16px -16px 16px; border: 1px solid rgba(167, 125, 53, 0.55); border-radius: 3px 60px 3px 3px;}
.page-article .article-visual img{display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 3px 60px 3px 3px; box-shadow: rgba(58, 13, 36, 0.14) 0px 22px 50px;}
.page-article .article-number{position: absolute; z-index: -2; top: -0.5em; left: -0.62em; color: rgba(194, 24, 91, 0.1); font: 400 clamp(110px,12vw,170px)/1 var(--font-heading); letter-spacing: -0.04em; pointer-events: none;}
.page-article .article-visual figcaption{margin: 14px 0px 0px 2px; color: rgb(138, 106, 60); font: italic 400 14px/1.4 var(--font-heading);}
.page-article .article-layout{display: grid; grid-template-columns: minmax(0px, 1fr) 300px; align-items: start; gap: clamp(32px, 5vw, 80px); padding: clamp(44px, 5.5vw, 72px) 0px clamp(28px, 4vw, 48px);}
.page-article .article-body{max-width: 680px;}
.page-article .article-body p{margin: 0px 0px 1.25em; color: rgb(63, 54, 56); font: 400 17px/1.85 var(--font-body);}
.page-article .has-dropcap::first-letter{float: left; margin: 10px 14px 0px 0px; color: var(--pink); font: 400 72px/.78 var(--font-heading);}
.page-article .pullquote{position: relative; margin: 34px 0px; padding: 6px 0px 6px 28px; border-left: 2px solid var(--gold);}
.page-article .pullquote::before{content: "“"; position: absolute; top: -22px; left: 22px; color: rgba(194, 24, 91, 0.22); font: 400 84px/1 var(--font-heading); pointer-events: none;}
.page-article .pullquote p{margin: 0px; color: var(--plum); font: italic 400 clamp(22px,2.1vw,28px)/1.35 var(--font-heading);}
.page-article .article-more{margin-top: 1.6em;}
.page-article .article-more a{display: inline-flex; align-items: center; gap: 10px; padding-bottom: 3px; border-bottom: 1px solid rgba(167, 125, 53, 0.5); color: var(--plum); font: 600 11px/1.5 var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; transition: color 0.2s, border-color 0.2s;}
.page-article .article-more a:hover{color: var(--pink); border-color: var(--pink);}
.page-article .article-signature{display: flex; align-items: center; gap: 14px; margin-top: 40px; padding-top: 24px; border-top: 1px solid rgba(167, 125, 53, 0.34);}
.page-article .article-signature .author-mark{display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; border: 1px solid rgba(167, 125, 53, 0.6); border-radius: 50%; background: rgba(255, 250, 246, 0.8); color: var(--plum); font: 400 16px/1 var(--font-heading); letter-spacing: 0.04em;}
.page-article .article-signature strong{display: block; color: rgb(48, 41, 44); font: 600 12px/1.4 var(--font-ui);}
.page-article .article-signature small{display: block; margin-top: 2px; color: rgb(122, 108, 106); font: 400 12px/1.4 var(--font-body);}
.page-article .article-side{position: sticky; top: 28px; display: grid; gap: 18px;}
.page-article .side-card{padding: 24px 24px 26px; border-radius: 3px 28px 3px 3px;}
.page-article .side-takeaways{background: linear-gradient(155deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: rgba(58, 13, 36, 0.16) 0px 18px 40px;}
.page-article .side-takeaways .eyebrow{color: var(--gold-soft);}
.page-article .side-takeaways ul{display: grid; gap: 12px; margin: 14px 0px 0px; padding: 0px; list-style: none;}
.page-article .side-takeaways li{position: relative; padding-left: 18px; color: rgb(243, 230, 234); font: 400 14px/1.6 var(--font-body);}
.page-article .side-takeaways li::before{content: ""; position: absolute; top: 0.62em; left: 0px; width: 7px; height: 7px; border-radius: 50%; background: rgb(244, 184, 207);}
.page-article .side-contact{border: 1px solid rgba(167, 125, 53, 0.42); background: rgba(255, 250, 246, 0.7);}
.page-article .side-contact p{margin: 10px 0px 16px; color: rgb(81, 72, 73); font: 400 14px/1.65 var(--font-body);}
.page-article .side-contact .btn{min-height: 44px; padding-inline: 16px; font-size: 9px;}
.page-article .article-related{padding: clamp(28px, 4vw, 44px) 0px clamp(44px, 6vw, 72px); border-top: 1px solid rgba(167, 125, 53, 0.34);}
.page-article .article-related-grid{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 24px 40px; margin-top: 18px;}
.page-article .related-card{position: relative; display: grid; grid-template-columns: 140px minmax(0px, 1fr); align-items: center; gap: 18px; padding-left: 46px; color: inherit; text-decoration: none;}
.page-article .related-num{position: absolute; top: 50%; left: 0px; transform: translateY(-50%); color: var(--gold); font: 400 26px/1 var(--font-heading);}
.page-article .related-card img{width: 100%; aspect-ratio: 1.25 / 1; object-fit: cover; border-radius: 2px 28px 2px 2px; transition: transform 0.5s cubic-bezier(0.2, 0.65, 0.3, 1);}
.page-article .related-card:hover img{transform: scale(1.03);}
.page-article .related-card .eyebrow{font-size: 9px;}
.page-article .related-card h2{margin: 6px 0px 0px; color: rgb(40, 35, 38); font: 500 22px/1.15 var(--font-heading); transition: color 0.2s;}
.page-article .related-card:hover h2{color: var(--pink);}
.page-article .cta-band{padding-top: 0px;}
@media (max-width: 1180px){
  .page-article .article-layout{grid-template-columns: minmax(0px, 1fr) 270px; gap: 40px;}
}
@media (max-width: 820px){
  .page-article .article-opener-grid{grid-template-columns: 1fr; gap: 34px;}
  .page-article .article-visual{width: min(100%, 460px); justify-self: start;}
  .page-article .article-visual img{aspect-ratio: 1.35 / 1;}
  .page-article .article-layout{grid-template-columns: 1fr; gap: 34px;}
  .page-article .article-side{position: static; grid-template-columns: repeat(2, minmax(0px, 1fr));}
  .page-article .article-related-grid{grid-template-columns: 1fr;}
}
@media (max-width: 620px){
  .page-article .article-opener{padding-top: 28px;}
  .page-article .article-visual{width: calc(100% - 16px);}
  .page-article .article-visual::before{inset: 12px -12px -12px 12px; border-radius: 3px 36px 3px 3px;}
  .page-article .article-visual img{border-radius: 3px 36px 3px 3px;}
  .page-article .article-number{top: -0.4em; left: -0.2em; font-size: 96px;}
  .page-article .article-body p{font-size: 16px; line-height: 1.8;}
  .page-article .has-dropcap::first-letter{margin-right: 10px; font-size: 60px;}
  .page-article .pullquote{margin: 26px 0px; padding-left: 20px;}
  .page-article .pullquote p{font-size: 21px;}
  .page-article .article-side{grid-template-columns: 1fr;}
  .page-article .related-card{grid-template-columns: 104px minmax(0px, 1fr); gap: 14px; padding-left: 38px;}
  .page-article .related-card h2{font-size: 19px;}
}
.page-blog .blog-meta{color: rgb(122, 108, 106); font: 500 11px/1.5 var(--font-ui); letter-spacing: 0.04em;}
.page-blog .blog-opener{display: grid; grid-template-columns: minmax(0px, 1.3fr) minmax(280px, 0.7fr); align-items: end; gap: clamp(28px, 5vw, 72px); padding: clamp(48px, 6vw, 84px) 0px clamp(30px, 4vw, 48px); border-bottom: 1px solid rgba(167, 125, 53, 0.34);}
.page-blog .blog-opener .display{max-width: 760px; margin: 12px 0px 16px; color: var(--ink); font-size: clamp(44px, 6vw, 84px); line-height: 0.98;}
.page-blog .blog-opener .lead{max-width: 600px; margin: 0px; color: rgb(74, 64, 66); font-size: clamp(16px, 1.2vw, 18px); line-height: 1.75;}
.page-blog .blog-topics{display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 24px;}
.page-blog .blog-topics > span{margin-right: 6px; color: rgb(122, 108, 106); font: 500 11px/1 var(--font-ui); letter-spacing: 0.06em;}
.page-blog .blog-topics a{display: inline-flex; align-items: center; min-height: 30px; padding: 0px 13px; border: 1px solid rgba(167, 125, 53, 0.5); border-radius: 999px; color: rgb(90, 67, 48); font: 600 9px/1 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase; transition: color 0.2s, border-color 0.2s, background 0.2s;}
.page-blog .blog-topics a:hover{border-color: var(--pink); background: rgb(255, 255, 255); color: var(--pink);}
.page-blog .blog-quick{display: grid; gap: 0px; padding: 22px 24px 10px; border-radius: 3px 28px 3px 3px; background: linear-gradient(155deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: rgba(58, 13, 36, 0.16) 0px 18px 40px;}
.page-blog .blog-quick .eyebrow{margin-bottom: 6px; color: var(--gold-soft);}
.page-blog .blog-quick a{display: grid; gap: 3px; padding: 13px 0px; border-top: 1px solid rgba(255, 240, 220, 0.16); color: rgb(255, 248, 242); text-decoration: none; transition: color 0.2s;}
.page-blog .blog-quick a:first-of-type{border-top: 0px;}
.page-blog .blog-quick a span{font: 500 18px/1.2 var(--font-heading); transition: color 0.2s;}
.page-blog .blog-quick a small{color: rgb(230, 211, 218); font: 400 12px/1.5 var(--font-body);}
.page-blog .blog-quick a:hover span{color: rgb(244, 184, 207);}
.page-blog .blog-cover{display: grid; grid-template-columns: minmax(280px, 0.9fr) minmax(0px, 1.1fr); align-items: center; gap: clamp(28px, 5vw, 80px); padding: clamp(44px, 5.5vw, 80px) 0px;}
.page-blog .blog-cover-visual{position: relative; isolation: isolate; width: min(100%, 440px); margin: 0px;}
.page-blog .blog-cover-visual::before{content: ""; position: absolute; z-index: -1; inset: 16px -16px -16px 16px; border: 1px solid rgba(167, 125, 53, 0.55); border-radius: 3px 60px 3px 3px;}
.page-blog .blog-cover-visual img{display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 3px 60px 3px 3px; box-shadow: rgba(58, 13, 36, 0.14) 0px 22px 50px; transition: transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1);}
.page-blog .blog-cover-visual a:hover img{transform: scale(1.02);}
.page-blog .blog-cover-visual .article-number{position: absolute; z-index: -2; top: -0.5em; left: -0.62em; color: rgba(194, 24, 91, 0.1); font: 400 clamp(110px,12vw,170px)/1 var(--font-heading); letter-spacing: -0.04em; pointer-events: none;}
.page-blog .blog-cover-visual figcaption{margin: 14px 0px 0px 2px; color: rgb(138, 106, 60); font: italic 400 14px/1.4 var(--font-heading);}
.page-blog .blog-cover-copy .eyebrow{color: rgb(138, 100, 38);}
.page-blog .blog-cover-copy h2{margin: 12px 0px 14px; font: 500 clamp(34px,4.4vw,58px)/1.02 var(--font-heading); letter-spacing: -0.01em;}
.page-blog .blog-cover-copy h2 a{color: rgb(40, 35, 38); text-decoration: none; transition: color 0.2s;}
.page-blog .blog-cover-copy h2 a:hover{color: var(--pink);}
.page-blog .blog-cover-copy p{max-width: 520px; margin: 0px 0px 14px; color: rgb(74, 64, 66); font: 400 16px/1.75 var(--font-body);}
.page-blog .blog-cover-copy .actions{margin-top: 22px;}
.page-blog .blog-list{padding: 0px 0px clamp(44px, 6vw, 80px);}
.page-blog .blog-list-head{display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; padding-bottom: 14px; border-bottom: 1px solid rgba(167, 125, 53, 0.4);}
.page-blog .blog-rows{margin: 0px; padding: 0px; list-style: none;}
.page-blog .blog-row a{display: grid; grid-template-columns: 56px 150px minmax(0px, 1fr) 40px; align-items: center; gap: 0px 22px; padding: 22px 0px; border-bottom: 1px solid rgba(167, 125, 53, 0.24); color: inherit; text-decoration: none; transition: background 0.2s;}
.page-blog .blog-row a:hover{background: rgba(255, 250, 246, 0.6);}
.page-blog .blog-row-num{color: var(--gold); font: 400 30px/1 var(--font-heading);}
.page-blog .blog-row img{width: 100%; aspect-ratio: 1.3 / 1; object-fit: cover; border-radius: 2px 28px 2px 2px; transition: transform 0.5s cubic-bezier(0.2, 0.65, 0.3, 1);}
.page-blog .blog-row a:hover img{transform: scale(1.03);}
.page-blog .blog-row-copy .eyebrow{font-size: 9px;}
.page-blog .blog-row-copy h2{margin: 6px 0px; color: rgb(40, 35, 38); font: 500 clamp(22px,2.2vw,28px)/1.12 var(--font-heading); transition: color 0.2s;}
.page-blog .blog-row a:hover h2{color: var(--pink);}
.page-blog .blog-row-copy p{max-width: 62ch; margin: 0px 0px 8px; color: rgb(81, 72, 73); font: 400 14px/1.7 var(--font-body);}
.page-blog .blog-row-arrow{justify-self: end; color: var(--gold); font-size: 22px; transition: transform 0.25s, color 0.2s;}
.page-blog .blog-row a:hover .blog-row-arrow{transform: translateX(4px); color: var(--pink);}
@media (max-width: 1180px){
  .page-blog .blog-opener{grid-template-columns: minmax(0px, 1.2fr) minmax(260px, 0.8fr);}
}
@media (max-width: 820px){
  .page-blog .blog-opener{grid-template-columns: 1fr; align-items: start; gap: 28px;}
  .page-blog .blog-quick{max-width: 460px;}
  .page-blog .blog-cover{grid-template-columns: 1fr; gap: 34px;}
  .page-blog .blog-cover-visual{width: min(100%, 460px);}
  .page-blog .blog-cover-visual img{aspect-ratio: 1.35 / 1;}
  .page-blog .blog-cover-visual .article-number{top: -0.42em; left: -0.12em;}
  .page-blog .blog-row a{grid-template-columns: 44px 130px minmax(0px, 1fr) 30px; gap: 0px 16px;}
}
@media (max-width: 620px){
  .page-blog .blog-opener{padding-top: 30px;}
  .page-blog .blog-opener .display{font-size: clamp(38px, 11vw, 52px);}
  .page-blog .blog-cover-visual{width: calc(100% - 16px);}
  .page-blog .blog-cover-visual::before{inset: 12px -12px -12px 12px; border-radius: 3px 36px 3px 3px;}
  .page-blog .blog-cover-visual img{border-radius: 3px 36px 3px 3px;}
  .page-blog .blog-cover-visual .article-number{top: -0.4em; left: -0.2em; font-size: 96px;}
  .page-blog .blog-row a{grid-template-columns: 34px minmax(0px, 1fr); grid-template-areas: "num img" "num copy"; gap: 10px 12px; padding: 18px 0px;}
  .page-blog .blog-row-num{grid-area: num; align-self: start; font-size: 24px;}
  .page-blog .blog-row img{grid-area: img; max-width: 200px; aspect-ratio: 1.5 / 1;}
  .page-blog .blog-row-copy{grid-area: copy;}
  .page-blog .blog-row-arrow{display: none;}
}
.page-contact .contact-opener{display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.15fr); align-items: end; gap: clamp(28px, 5vw, 72px); padding: clamp(48px, 6vw, 84px) 0px clamp(30px, 4vw, 48px); border-bottom: 1px solid rgba(167, 125, 53, 0.34);}
.page-contact .contact-opener .display{max-width: 620px; margin: 12px 0px 16px; color: var(--ink); font-size: clamp(50px, 7vw, 92px); line-height: 0.98;}
.page-contact .contact-opener .lead{max-width: 480px; margin: 0px; color: rgb(74, 64, 66); font-size: clamp(16px, 1.2vw, 18px); line-height: 1.75;}
.page-contact .contact-ways{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 12px;}
.page-contact .contact-way{display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0px; padding: 20px 18px 18px; border: 1px solid rgba(167, 125, 53, 0.42); border-radius: 3px 24px 3px 3px; background: rgba(255, 250, 246, 0.7); color: inherit; text-decoration: none; transition: border-color 0.2s, background 0.2s, transform 0.2s, box-shadow 0.2s;}
.page-contact .contact-way:hover{transform: translateY(-2px); border-color: var(--pink); background: rgb(255, 250, 246); box-shadow: rgba(80, 16, 47, 0.08) 0px 14px 30px;}
.page-contact .way-icon{display: grid; width: 40px; height: 40px; place-items: center; margin-bottom: 10px; border: 1px solid rgba(138, 100, 38, 0.5); border-radius: 50%; color: rgb(139, 104, 55); transition: color 0.2s, border-color 0.2s, background 0.2s;}
.page-contact .way-icon svg{width: 19px; height: 19px; fill: none; stroke: currentcolor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round;}
.page-contact .contact-way:hover .way-icon{border-color: var(--pink); background: rgb(255, 255, 255); color: var(--pink);}
.page-contact .way-label{color: rgb(124, 90, 44); font: 600 9px/1.5 var(--font-ui); letter-spacing: 0.16em; text-transform: uppercase;}
.page-contact .contact-way strong{max-width: 100%; color: rgb(40, 35, 38); font: 500 16px/1.3 var(--font-heading); overflow-wrap: anywhere;}
.page-contact .contact-way small{color: rgb(107, 95, 96); font: 400 12px/1.5 var(--font-body);}
.page-contact .contact-way.is-primary{border-color: transparent; background: linear-gradient(155deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: rgba(58, 13, 36, 0.16) 0px 18px 40px;}
.page-contact .contact-way.is-primary .way-icon{border-color: rgba(230, 201, 143, 0.6); color: var(--gold-soft);}
.page-contact .contact-way.is-primary .way-label{color: var(--gold-soft);}
.page-contact .contact-way.is-primary strong{color: rgb(255, 248, 242);}
.page-contact .contact-way.is-primary small{color: rgb(234, 221, 225);}
.page-contact .contact-way.is-primary:hover{background: linear-gradient(155deg,#5e1537,var(--plum-deep)); border-color: transparent;}
.page-contact .contact-way.is-primary:hover .way-icon{border-color: rgb(244, 184, 207); background: transparent; color: rgb(244, 184, 207);}
.page-contact .contact-layout{display: grid; grid-template-columns: minmax(0px, 1.35fr) minmax(280px, 0.65fr); align-items: start; gap: clamp(28px, 5vw, 64px); padding: clamp(40px, 5vw, 64px) 0px clamp(60px, 8vw, 104px);}
.page-contact .contact-card{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 18px 20px; padding: clamp(24px, 3.5vw, 40px); border: 1px solid rgba(167, 125, 53, 0.38); border-radius: 3px 44px 3px 3px; background: rgba(255, 250, 246, 0.85); box-shadow: rgba(80, 16, 47, 0.06) 0px 20px 50px;}
.page-contact .contact-form-head{grid-column: 1 / -1; margin-bottom: 6px;}
.page-contact .contact-form-head .eyebrow{color: rgb(138, 100, 38);}
.page-contact .contact-form-head h2{margin: 10px 0px 8px; color: rgb(40, 35, 38); font: 500 clamp(26px,2.6vw,34px)/1.1 var(--font-heading);}
.page-contact .contact-form-head p{margin: 0px; color: rgb(90, 79, 81); font: 400 15px/1.65 var(--font-body);}
.page-contact .field input::placeholder, .page-contact .field textarea::placeholder{color: rgb(163, 147, 143);}
.page-contact fieldset.field{margin: 0px; padding: 0px; border: 0px;}
.page-contact fieldset.field legend{padding: 0px; margin-bottom: 9px; color: rgb(54, 46, 48); font: 600 12px/1.4 var(--font-ui); letter-spacing: 0.015em;}
.page-contact .pill-group{display: flex; flex-wrap: wrap; gap: 8px;}
.page-contact .pill{position: relative; display: inline-flex;}
.page-contact .pill input{position: absolute; width: 1px; height: 1px; margin: 0px; opacity: 0; pointer-events: none;}
.page-contact .pill span{display: inline-flex; align-items: center; min-height: 38px; padding: 0px 16px; border: 1px solid rgba(148, 111, 70, 0.42); border-radius: 999px; background: rgba(255, 250, 246, 0.7); color: rgb(74, 63, 65); font: 500 13px/1 var(--font-ui); cursor: pointer; transition: border-color 0.2s, background 0.2s, color 0.2s;}
.page-contact .pill:hover span{border-color: rgb(154, 107, 53); background: rgb(255, 250, 246);}
.page-contact .pill input:checked + span{border-color: var(--plum); background: var(--plum); color: rgb(255, 248, 242);}
.page-contact .pill input:focus-visible + span{outline: rgb(165, 109, 36) solid 2px; outline-offset: 3px;}
.page-contact .contact-form-foot{display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; grid-column: 1 / -1; margin-top: 6px;}
.page-contact .contact-form-foot .btn{min-width: 210px;}
.page-contact .contact-form-alt{color: rgb(107, 95, 96); font: 400 13px/1.5 var(--font-body);}
.page-contact .contact-form-alt a{color: var(--plum); font-weight: 600; text-decoration: underline rgba(167, 125, 53, 0.6); text-underline-offset: 3px;}
.page-contact .contact-form-alt a:hover{color: var(--pink); text-decoration-color: currentcolor;}
.page-contact .form-status{grid-column: 1 / -1; margin: 0px;}
.page-contact .form-status:empty{display: none;}
.page-contact .contact-side{position: sticky; top: 28px; display: grid; gap: 18px;}
.page-contact .contact-side-card{padding: 24px 24px 26px; border: 1px solid rgba(167, 125, 53, 0.42); border-radius: 3px 28px 3px 3px; background: rgba(255, 250, 246, 0.7);}
.page-contact .contact-side-card.is-plum{border: 0px; background: linear-gradient(155deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: rgba(58, 13, 36, 0.16) 0px 18px 40px;}
.page-contact .contact-side-card.is-plum .eyebrow{color: var(--gold-soft);}
.page-contact .next-steps{display: grid; gap: 0px; margin: 12px 0px 0px; padding: 0px; list-style: none;}
.page-contact .next-steps li{display: grid; grid-template-columns: 34px minmax(0px, 1fr); gap: 12px; padding: 12px 0px; border-top: 1px solid rgba(255, 240, 220, 0.16);}
.page-contact .next-steps li:first-child{border-top: 0px; padding-top: 4px;}
.page-contact .next-steps span{color: rgb(244, 184, 207); font: 400 22px/1.1 var(--font-heading);}
.page-contact .next-steps strong{display: block; color: rgb(255, 248, 242); font: 600 12px/1.4 var(--font-ui); letter-spacing: 0.02em;}
.page-contact .next-steps small{display: block; margin-top: 3px; color: rgb(230, 211, 218); font: 400 13px/1.5 var(--font-body);}
.page-contact .contact-address{display: flex; gap: 12px; margin: 14px 0px 10px; color: rgb(48, 41, 44); font: 400 15px/1.6 var(--font-body);}
.page-contact .contact-address svg{width: 20px; height: 20px; flex: 0 0 20px; margin-top: 3px; fill: none; stroke: var(--gold); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round;}
.page-contact .contact-side-note{margin: 0px 0px 16px; color: rgb(107, 95, 96); font: 400 13px/1.5 var(--font-body);}
.page-contact .contact-side-link{display: inline-flex; align-items: center; gap: 10px; padding-bottom: 3px; border-bottom: 1px solid rgba(167, 125, 53, 0.5); color: var(--plum); font: 600 11px/1.5 var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; transition: color 0.2s, border-color 0.2s;}
.page-contact .contact-side-link:hover{color: var(--pink); border-color: var(--pink);}
@media (max-width: 1180px){
  .page-contact .contact-opener{grid-template-columns: 1fr; align-items: start; gap: 28px;}
  .page-contact .contact-layout{grid-template-columns: minmax(0px, 1fr) 270px; gap: 34px;}
}
@media (max-width: 820px){
  .page-contact .contact-ways{grid-template-columns: 1fr 1fr;}
  .page-contact .contact-way.is-primary{grid-column: 1 / -1;}
  .page-contact .contact-layout{grid-template-columns: 1fr; gap: 28px;}
  .page-contact .contact-side{position: static; grid-template-columns: repeat(2, minmax(0px, 1fr));}
}
@media (max-width: 620px){
  .page-contact .contact-opener{padding-top: 30px;}
  .page-contact .contact-opener .display{font-size: clamp(46px, 13vw, 64px);}
  .page-contact .contact-ways{grid-template-columns: 1fr;}
  .page-contact .contact-card{grid-template-columns: 1fr; gap: 15px; padding: 22px 18px 24px; border-radius: 3px 30px 3px 3px;}
  .page-contact .contact-form-foot .btn{width: 100%;}
  .page-contact .contact-side{grid-template-columns: 1fr;}
}
.page-gallery .lightbox figure{position: relative; margin: 0px; max-width: min(90vw, 1500px); text-align: center;}
.page-gallery .lightbox figcaption{display: flex; justify-content: center; gap: 14px; margin-top: 14px; color: rgb(243, 230, 234); font: 400 14px/1.5 var(--font-body);}
.page-gallery .lightbox-counter{color: var(--gold-soft); font: 400 14px/1.5 var(--font-heading);}
.page-gallery .lightbox-nav{position: absolute; top: 50%; z-index: 1; display: grid; width: 48px; height: 48px; place-items: center; transform: translateY(-50%); border: 1px solid rgba(255, 250, 246, 0.35); border-radius: 50%; background: rgba(30, 19, 23, 0.5); color: rgb(255, 250, 246); font-size: 20px; cursor: pointer; transition: background 0.2s, border-color 0.2s;}
.page-gallery .lightbox-nav:hover{border-color: rgb(244, 184, 207); background: rgba(80, 16, 47, 0.8);}
.page-gallery .lightbox-prev{left: 22px;}
.page-gallery .lightbox-next{right: 22px;}
@media (max-width: 620px){
  .page-gallery .lightbox-nav{top: auto; bottom: 18px; transform: none; width: 42px; height: 42px;}
  .page-gallery .lightbox figcaption{margin-bottom: 56px;}
}
.page-about .about-opener{display: grid; grid-template-columns: minmax(0px, 1.2fr) minmax(300px, 0.8fr); align-items: center; gap: clamp(28px, 5vw, 80px); padding: clamp(48px, 6vw, 84px) 0px clamp(36px, 5vw, 64px);}
.page-about .about-opener .display{max-width: 720px; margin: 12px 0px 6px; color: var(--ink); font-size: clamp(40px, 5.2vw, 72px); line-height: 1;}
.page-about .about-opener .script{margin: 0px 0px 18px; color: var(--gold); font: italic 400 clamp(26px,2.6vw,38px)/1.2 var(--font-heading);}
.page-about .about-opener .lead{max-width: 560px; margin: 0px; color: rgb(74, 64, 66); font-size: clamp(16px, 1.2vw, 18px); line-height: 1.75;}
.page-about .about-opener-visual{position: relative; isolation: isolate; width: min(100%, 420px); margin: 0px; justify-self: end;}
.page-about .about-opener-visual::before{content: ""; position: absolute; z-index: -1; inset: 16px -16px -16px 16px; border: 1px solid rgba(167, 125, 53, 0.55); border-radius: 3px 60px 3px 3px;}
.page-about .about-opener-visual img{display: block; width: 100%; aspect-ratio: 0.95 / 1; object-fit: cover; border-radius: 3px 60px 3px 3px; box-shadow: rgba(58, 13, 36, 0.14) 0px 22px 50px;}
.page-about .about-year{position: absolute; z-index: -2; top: -0.5em; left: -0.55em; color: rgba(194, 24, 91, 0.1); font: 400 clamp(100px,10vw,150px)/1 var(--font-heading); letter-spacing: -0.04em; pointer-events: none;}
.page-about .about-opener-visual figcaption{margin: 14px 0px 0px 2px; color: rgb(138, 106, 60); font: italic 400 14px/1.4 var(--font-heading);}
.page-about .about-narrative{display: grid; grid-template-columns: 240px minmax(0px, 1fr); align-items: start; gap: clamp(32px, 5vw, 80px); padding: clamp(24px, 3vw, 40px) 0px clamp(56px, 7vw, 96px); border-top: 1px solid rgba(167, 125, 53, 0.34);}
.page-about .about-facts{position: sticky; top: 32px; padding-top: 28px;}
.page-about .about-facts .eyebrow{color: rgb(138, 100, 38);}
.page-about .about-facts dl{margin: 10px 0px 0px;}
.page-about .about-facts dl > div{padding: 14px 0px; border-top: 1px solid rgba(167, 125, 53, 0.24);}
.page-about .about-facts dt{color: var(--plum); font: 400 26px/1.1 var(--font-heading);}
.page-about .about-facts dd{margin: 4px 0px 0px; color: rgb(124, 90, 44); font: 600 9px/1.5 var(--font-ui); letter-spacing: 0.16em; text-transform: uppercase;}
.page-about .about-text{max-width: 680px; padding-top: 28px;}
.page-about .about-text p{margin: 0px 0px 1.25em; color: rgb(63, 54, 56); font: 400 17px/1.85 var(--font-body);}
.page-about .about-text .has-dropcap::first-letter{float: left; margin: 10px 14px 0px 0px; color: var(--pink); font: 400 72px/.78 var(--font-heading);}
.page-about .about-text .pullquote{position: relative; margin: 34px 0px; padding: 6px 0px 6px 28px; border-left: 2px solid var(--gold);}
.page-about .about-text .pullquote::before{content: "“"; position: absolute; top: -22px; left: 22px; color: rgba(194, 24, 91, 0.22); font: 400 84px/1 var(--font-heading); pointer-events: none;}
.page-about .about-text .pullquote p{margin: 0px; color: var(--plum); font: italic 400 clamp(22px,2.1vw,28px)/1.35 var(--font-heading);}
.page-about .about-manifesto{padding: clamp(56px, 7vw, 96px) 0px; background: linear-gradient(rgb(248, 239, 233) 0%, rgb(246, 236, 230) 50%, rgb(248, 239, 233) 100%);}
.page-about .about-manifesto-head{max-width: 760px; margin: 0px 0px 30px;}
.page-about .about-manifesto-head .eyebrow{color: rgb(138, 100, 38);}
.page-about .about-manifesto-head .display{margin: 12px 0px 0px; color: rgb(32, 23, 25); font-size: clamp(36px, 4.4vw, 58px); line-height: 1.04;}
.page-about .manifesto-list{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 0px clamp(32px, 5vw, 80px); margin: 0px; padding: 0px; list-style: none; border-top: 1px solid rgba(167, 125, 53, 0.4);}
.page-about .manifesto-item{position: relative; padding: 30px 0px 34px 72px; border-bottom: 1px solid rgba(167, 125, 53, 0.24);}
.page-about .manifesto-num{position: absolute; top: 30px; left: 0px; color: var(--gold); font: 400 40px/1 var(--font-heading); letter-spacing: -0.02em;}
.page-about .manifesto-item h3{margin: 4px 0px 10px; color: rgb(40, 35, 38); font: 400 clamp(26px,2.6vw,34px)/1.1 var(--font-heading);}
.page-about .manifesto-item p{max-width: 46ch; margin: 0px; color: rgb(74, 64, 66); font: 400 15px/1.75 var(--font-body);}
.page-about .about-quote{padding: clamp(48px, 6vw, 84px) 0px 0px;}
.page-about .about-quote-card{position: relative; max-width: 900px; margin: 0px auto; padding: clamp(36px, 5vw, 64px) clamp(28px, 5vw, 72px); border-radius: 3px 56px 3px 3px; background: linear-gradient(150deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); text-align: center; box-shadow: rgba(58, 13, 36, 0.16) 0px 22px 50px;}
.page-about .about-quote-card .quote-mark{position: absolute; top: 10px; left: 28px; color: rgba(244, 184, 207, 0.35); font: 400 120px/1 var(--font-heading); pointer-events: none;}
.page-about .about-quote-card blockquote{margin: 0px;}
.page-about .about-quote-card blockquote p{margin: 0px auto 24px; max-width: 22ch; color: rgb(255, 248, 242); font: italic 400 clamp(26px,3.2vw,42px)/1.25 var(--font-heading);}
.page-about .about-quote-card .testimonial-author{display: flex; width: max-content; margin: 0px auto; align-items: center; gap: 12px; text-align: left;}
.page-about .about-quote-card .author-mark{display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(244, 184, 207, 0.6); border-radius: 50%; color: rgb(244, 184, 207); font: 400 18px/1 var(--font-heading);}
.page-about .about-quote-card .testimonial-author strong{display: block; color: rgb(255, 248, 242); font: 600 12px/1.4 var(--font-ui);}
.page-about .about-quote-card .testimonial-author small{display: block; color: rgb(230, 211, 218); font: 400 12px/1.4 var(--font-body);}
.page-about .about-quote-link{display: flex; width: max-content; align-items: center; gap: 10px; margin: 26px auto 0px; padding-bottom: 3px; border-bottom: 1px solid rgba(230, 201, 143, 0.6); color: var(--gold-soft); font: 600 10px/1.5 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase; transition: color 0.2s, border-color 0.2s;}
.page-about .about-quote-link:hover{color: rgb(255, 255, 255); border-color: rgb(255, 255, 255);}
.page-about .about-strip{padding: clamp(56px, 7vw, 96px) 0px clamp(40px, 5vw, 64px); scroll-margin-top: 40px;}
.page-about .about-strip-head{display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 14px 24px; margin-bottom: 26px;}
.page-about .about-strip-head .eyebrow{color: rgb(138, 100, 38);}
.page-about .about-strip-head .display{margin: 10px 0px 0px; color: rgb(32, 23, 25); font-size: clamp(34px, 4vw, 52px); line-height: 1.04;}
.page-about .about-strip-link{display: inline-flex; align-items: center; gap: 10px; padding-bottom: 3px; border-bottom: 1px solid rgba(167, 125, 53, 0.5); color: var(--plum); font: 600 11px/1.5 var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; transition: color 0.2s, border-color 0.2s;}
.page-about .about-strip-link:hover{color: var(--pink); border-color: var(--pink);}
.page-about .about-strip-grid{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 20px;}
.page-about .about-strip-grid figure{margin: 0px;}
.page-about .about-strip-grid img{display: block; width: 100%; aspect-ratio: 1.3 / 1; object-fit: cover; border-radius: 3px 36px 3px 3px; transition: transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1);}
.page-about .about-strip-grid figure:hover img{transform: scale(1.02);}
.page-about .about-strip-grid figcaption{display: flex; align-items: baseline; gap: 10px; padding: 10px 2px 0px; color: rgb(48, 41, 44); font: 400 14px/1.4 var(--font-body);}
.page-about .about-strip-grid figcaption span{color: rgb(138, 106, 60); font: 600 8px/1.5 var(--font-ui); letter-spacing: 0.16em;}
@media (max-width: 1180px){
  .page-about .about-narrative{grid-template-columns: 200px minmax(0px, 1fr); gap: 36px;}
}
@media (max-width: 820px){
  .page-about .about-opener{grid-template-columns: 1fr; gap: 30px;}
  .page-about .about-opener-visual{width: min(100%, 440px); justify-self: start;}
  .page-about .about-opener-visual img{aspect-ratio: 1.3 / 1;}
  .page-about .about-narrative{grid-template-columns: 1fr; gap: 10px;}
  .page-about .about-facts{position: static; padding-top: 24px;}
  .page-about .about-facts dl{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 0px 20px;}
  .page-about .about-text{padding-top: 8px;}
  .page-about .manifesto-list{grid-template-columns: 1fr;}
  .page-about .about-strip-grid{grid-template-columns: 1fr 1fr;}
  .page-about .about-strip-grid figure:first-child{grid-column: 1 / -1;}
  .page-about .about-strip-grid figure:first-child img{aspect-ratio: 1.8 / 1;}
}
@media (max-width: 620px){
  .page-about .about-opener{padding-top: 30px;}
  .page-about .about-opener .display{font-size: clamp(34px, 10vw, 46px);}
  .page-about .about-opener-visual{width: calc(100% - 16px);}
  .page-about .about-opener-visual::before{inset: 12px -12px -12px 12px; border-radius: 3px 36px 3px 3px;}
  .page-about .about-opener-visual img{border-radius: 3px 36px 3px 3px;}
  .page-about .about-year{top: -0.4em; left: -0.2em; font-size: 84px;}
  .page-about .about-facts dt{font-size: 22px;}
  .page-about .about-text p{font-size: 16px; line-height: 1.8;}
  .page-about .about-text .has-dropcap::first-letter{margin-right: 10px; font-size: 60px;}
  .page-about .about-text .pullquote{margin: 26px 0px; padding-left: 20px;}
  .page-about .about-text .pullquote p{font-size: 21px;}
  .page-about .manifesto-item{padding: 22px 0px 26px 56px;}
  .page-about .manifesto-num{top: 22px; font-size: 32px;}
  .page-about .about-quote-card{border-radius: 3px 36px 3px 3px; text-align: left;}
  .page-about .about-quote-card blockquote p{margin-left: 0px; max-width: none;}
  .page-about .about-quote-link{margin-left: 0px;}
  .page-about .about-strip-grid{grid-template-columns: 1fr; gap: 16px;}
}
.page-videochat .cta-band{padding-top: clamp(40px, 5vw, 64px);}
.page-comparison .routes-opener{padding: clamp(48px, 6vw, 84px) 0px clamp(40px, 5vw, 64px);}
.page-comparison .routes-opener-copy{max-width: 760px; margin-bottom: clamp(28px, 4vw, 44px);}
.page-comparison .routes-opener .display{max-width: 720px; margin: 12px 0px 16px; color: var(--ink); font-size: clamp(44px, 6vw, 84px); line-height: 0.98;}
.page-comparison .routes-opener .lead{max-width: 600px; margin: 0px; color: rgb(74, 64, 66); font-size: clamp(16px, 1.2vw, 18px); line-height: 1.75;}
.page-comparison .routes-doors{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 20px;}
.page-comparison .route-door{position: relative; display: flex; flex-direction: column; min-width: 0px; padding: 0px 0px 22px; border-bottom: 1px solid rgba(167, 125, 53, 0.3); color: inherit; text-decoration: none;}
.page-comparison .route-door figure{position: relative; isolation: isolate; margin: 0px 0px 18px; overflow: hidden; border-radius: 3px 40px 3px 3px;}
.page-comparison .route-door img{display: block; width: 100%; aspect-ratio: 1.35 / 1; object-fit: cover; transition: transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1);}
.page-comparison .route-door:hover img{transform: scale(1.03);}
.page-comparison .route-door-num{position: absolute; top: 12px; left: 14px; color: rgb(255, 250, 246); font: 400 18px/1 var(--font-heading); text-shadow: rgba(30, 16, 20, 0.5) 0px 1px 8px;}
.page-comparison .route-door .col-badge{display:block;width:max-content;margin:0 0 10px;padding:5px 10px;border-radius:999px;background:var(--pink);color:#fff;font:600 9px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;font-style:normal}
.page-comparison .route-door h2{margin: 0px 0px 8px; color: rgb(40, 35, 38); font: 400 clamp(22px,2vw,27px)/1.12 var(--font-heading); transition: color 0.2s;}
.page-comparison .route-door:hover h2{color: var(--pink);}
.page-comparison .route-door p{margin: 0px 0px 14px; color: rgb(81, 72, 73); font: 400 14px/1.7 var(--font-body);}
.page-comparison .route-door-more{margin-top: auto; color: var(--plum); font: 600 10px/1.5 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase;}
.page-comparison .route-door.is-rec{padding: 0px 20px 22px; border: 1px solid rgba(80, 16, 47, 0.25); border-radius: 3px 44px 3px 3px; background: rgba(255, 250, 246, 0.7);}
.page-comparison .route-door.is-rec figure{margin: -1px -21px 18px; border-radius: 3px 44px 0px 0px;}
.page-comparison .route-quiz{padding: 0px 0px clamp(40px, 5vw, 64px);}
.page-comparison .route-quiz-card{display: grid; grid-template-columns: minmax(0px, 0.8fr) minmax(0px, 1.2fr); gap: 28px clamp(32px, 5vw, 72px); padding: clamp(28px, 4vw, 48px) clamp(24px, 4vw, 56px); border-radius: 3px 56px 3px 3px; background: linear-gradient(150deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: rgba(58, 13, 36, 0.16) 0px 22px 50px;}
.page-comparison .route-quiz-head .eyebrow{color: var(--gold-soft);}
.page-comparison .route-quiz-head .display{margin: 10px 0px 12px; color: rgb(255, 248, 242); font-size: clamp(32px, 3.6vw, 48px); line-height: 1.04;}
.page-comparison .route-quiz-head .display .accent{color: rgb(244, 184, 207);}
.page-comparison .route-quiz-head p{margin: 0px; color: rgb(234, 221, 225); font: 400 15px/1.7 var(--font-body);}
.page-comparison .route-quiz-form{display: grid; gap: 18px;}
.page-comparison .route-quiz-form fieldset{margin: 0px; padding: 0px 0px 16px; border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgba(255, 240, 220, 0.16); border-image: none;}
.page-comparison .route-quiz-form legend{display: flex; gap: 12px; align-items: baseline; margin-bottom: 12px; padding: 0px; color: rgb(255, 248, 242); font: 500 15px/1.4 var(--font-ui);}
.page-comparison .route-quiz-form legend span{color: rgb(244, 184, 207); font: 400 20px/1 var(--font-heading);}
.page-comparison .route-quiz-form .pill-group{display: flex; flex-wrap: wrap; gap: 8px;}
.page-comparison .route-quiz-form .pill{position: relative; display: inline-flex;}
.page-comparison .route-quiz-form .pill input{position: absolute; width: 1px; height: 1px; margin: 0px; opacity: 0; pointer-events: none;}
.page-comparison .route-quiz-form .pill span{display: inline-flex; align-items: center; min-height: 36px; padding: 0px 15px; border: 1px solid rgba(255, 240, 220, 0.35); border-radius: 999px; color: rgb(255, 244, 231); font: 500 13px/1 var(--font-ui); cursor: pointer; transition: border-color 0.2s, background 0.2s, color 0.2s;}
.page-comparison .route-quiz-form .pill:hover span{border-color: rgb(244, 184, 207);}
.page-comparison .route-quiz-form .pill input:checked + span{border-color: var(--pink); background: var(--pink); color: rgb(255, 255, 255);}
.page-comparison .route-quiz-form .pill input:focus-visible + span{outline: 2px solid var(--gold-soft); outline-offset: 3px;}
.page-comparison .route-quiz-result{padding-top: 4px;}
.page-comparison .route-quiz-placeholder{color: rgb(217, 195, 204); font: italic 400 16px/1.5 var(--font-heading);}
.page-comparison .route-quiz-verdict .eyebrow{color: var(--gold-soft);}
.page-comparison .route-quiz-verdict strong{display: block; margin: 8px 0px; color: rgb(255, 248, 242); font: 400 clamp(24px,2.4vw,32px)/1.1 var(--font-heading);}
.page-comparison .route-quiz-verdict p{margin: 0px 0px 16px; color: rgb(234, 221, 225); font: 400 14px/1.65 var(--font-body);}
.page-comparison .route-quiz-verdict .actions{display: flex; flex-wrap: wrap; gap: 10px;}
.page-comparison .route-quiz-verdict .btn{min-height: 46px; padding-inline: 18px; font-size: 9px;}
.page-comparison .route-quiz-verdict .btn.outline{min-width: 0px; border-color: rgba(230, 201, 143, 0.7); background: transparent; color: rgb(255, 244, 231);}
.page-comparison .route-quiz-verdict .btn.outline:hover{border-color: var(--gold-soft); background: rgba(255, 248, 242, 0.08); color: rgb(255, 255, 255);}
.page-comparison .is-hidden{display: none;}
.page-comparison .comparison-section{scroll-margin-top: 24px;}
@media (max-width: 1180px){
  .page-comparison .route-quiz-card{grid-template-columns: 1fr; gap: 20px;}
}
@media (max-width: 820px){
  .page-comparison .routes-doors{grid-template-columns: 1fr 1fr;}
  .page-comparison .route-door.is-rec{grid-column: 1 / -1;}
  .page-comparison .route-door.is-rec img{aspect-ratio: 2 / 1;}
}
@media (max-width: 620px){
  .page-comparison .routes-opener{padding-top: 30px;}
  .page-comparison .routes-opener .display{font-size: clamp(38px, 11vw, 52px);}
  .page-comparison .routes-doors{grid-template-columns: 1fr; gap: 16px;}
  .page-comparison .route-door.is-rec img{aspect-ratio: 1.5 / 1;}
  .page-comparison .route-quiz-card{padding: 24px 18px 26px; border-radius: 3px 36px 3px 3px;}
  .page-comparison .route-quiz-verdict .btn{width: 100%;}
}
@keyframes home-marquee { 
  100% { transform: translateX(-50%); }
}
.page-home .home-space-head, .page-home .home-journal-head{display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 14px 24px; margin-bottom: 26px;}
.page-home .home-space-head .eyebrow, .page-home .home-journal-head .eyebrow, .page-home .home-voices-head .eyebrow{color: rgb(138, 100, 38);}
.page-home .home-space-head .display, .page-home .home-journal-head .display{margin: 10px 0px 0px; color: rgb(32, 23, 25); font-size: clamp(32px, 4vw, 52px); line-height: 1.04;}
.page-home .home-journal{padding: clamp(40px, 5vw, 72px) 0px clamp(24px, 3vw, 40px);}
.page-home .home-journal-list{margin: 0px; padding: 0px; list-style: none; border-top: 1px solid rgba(167, 125, 53, 0.4);}
.page-home .home-journal-list a{display: grid; grid-template-columns: 56px minmax(0px, 1fr) 40px; align-items: center; gap: 0px 20px; padding: 18px 0px; border-bottom: 1px solid rgba(167, 125, 53, 0.24); color: inherit; text-decoration: none; transition: background 0.2s;}
.page-home .home-journal-list a:hover{background: rgba(255, 250, 246, 0.6);}
.page-home .home-journal-num{color: var(--gold); font: 400 28px/1 var(--font-heading);}
.page-home .home-journal-list .eyebrow{font-size: 9px; color: rgb(138, 100, 38);}
.page-home .home-journal-list h3{margin: 5px 0px 0px; color: rgb(40, 35, 38); font: 400 clamp(20px,2vw,26px)/1.15 var(--font-heading); transition: color 0.2s;}
.page-home .home-journal-list a:hover h3{color: var(--pink);}
.page-home .home-journal-arrow{justify-self: end; color: var(--gold); font-size: 22px; transition: transform 0.25s, color 0.2s;}
.page-home .home-journal-list a:hover .home-journal-arrow{transform: translateX(4px); color: var(--pink);}
@media (max-width: 620px){
  .page-home .home-journal-list a{grid-template-columns: 40px minmax(0px, 1fr) 24px; gap: 0px 12px;}
  .page-home .home-journal-num{font-size: 22px;}
}
.home-b .topbar{position: sticky; inset: auto; background: rgba(251, 245, 239, 0.96); border-bottom: 1px solid rgba(167, 125, 53, 0.22); box-shadow: none;}
.home-b .topbar::after{display: none;}
.home-b .nav{height: 98px; min-height: 98px;}
.home-b .home-reasons{padding: clamp(48px, 6vw, 84px) 0px; background: linear-gradient(rgb(251, 245, 239) 0%, rgb(248, 239, 233) 40%, rgb(246, 236, 230) 100%);}
.home-b .reasons-list{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 0px; margin: 0px; padding: 0px; list-style: none; border-top: 1px solid rgba(167, 125, 53, 0.4);}
.home-b .reason{position: relative; padding: 28px clamp(18px, 2.5vw, 36px) 30px 0px; border-right: 1px solid rgba(167, 125, 53, 0.24);}
.home-b .reason + .reason{padding-left: clamp(18px, 2.5vw, 36px);}
.home-b .reason:last-child{border-right: 0px; padding-right: 0px;}
.home-b .reason-num{display: block; margin-bottom: 14px; color: var(--gold); font: 400 30px/1 var(--font-heading);}
.home-b .reason h2{margin: 0px 0px 10px; color: rgb(40, 35, 38); font: 400 clamp(26px,2.6vw,36px)/1.08 var(--font-heading);}
.home-b .reason h2 em{display: block; color: var(--pink); font-style: italic;}
.home-b .reason p{max-width: 36ch; margin: 0px; color: rgb(74, 64, 66); font: 400 15px/1.7 var(--font-body);}
.home-b .home-link{display: inline-flex; align-items: center; gap: 10px; padding-bottom: 3px; border-bottom: 1px solid rgba(167, 125, 53, 0.5); color: var(--plum); font: 600 11px/1.5 var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase; transition: color 0.2s, border-color 0.2s;}
.home-b .home-link:hover{color: var(--pink); border-color: var(--pink);}
.home-b .home-doors{padding: clamp(56px, 7vw, 96px) 0px clamp(20px, 3vw, 40px);}
.home-b .home-doors-head, .home-b .home-journal-head, .home-b .home-timeline-head{display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 14px 24px; margin-bottom: 26px;}
.home-b .home-doors-head .eyebrow, .home-b .home-journal-head .eyebrow, .home-b .home-timeline-head .eyebrow, .home-b .home-included-head .eyebrow{color: rgb(138, 100, 38);}
.home-b .home-doors-head .display, .home-b .home-journal-head .display, .home-b .home-timeline-head .display, .home-b .home-included-head .display{margin: 10px 0px 0px; color: rgb(32, 23, 25); font-size: clamp(32px, 4vw, 52px); line-height: 1.04;}
.home-b .home-doors-grid{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 20px;}
.home-b .home-door{display: flex; flex-direction: column; padding: 0px 0px 20px; border-bottom: 1px solid rgba(167, 125, 53, 0.3); color: inherit; text-decoration: none;}
.home-b .home-door figure{position: relative; margin: 0px 0px 16px; overflow: hidden; border-radius: 3px 40px 3px 3px;}
.home-b .home-door img{display: block; width: 100%; aspect-ratio: 1.35 / 1; object-fit: cover; transition: transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1);}
.home-b .home-door:hover img{transform: scale(1.03);}
.home-b .home-door figure span{position: absolute; top: 12px; left: 14px; color: rgb(255, 250, 246); font: 400 18px/1 var(--font-heading); text-shadow: rgba(30, 16, 20, 0.5) 0px 1px 8px;}
.home-b .home-door .col-badge{display:block;width:max-content;margin:0 0 10px;padding:5px 10px;border-radius:999px;background:var(--pink);color:#fff;font:600 9px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;font-style:normal}
.home-b .home-door h3{margin: 0px 0px 8px; color: rgb(40, 35, 38); font: 400 clamp(21px,1.9vw,26px)/1.12 var(--font-heading); transition: color 0.2s;}
.home-b .home-door:hover h3{color: var(--pink);}
.home-b .home-door p{margin: 0px; color: rgb(81, 72, 73); font: 400 14px/1.7 var(--font-body);}
.home-b .home-door.is-rec{padding: 0px 20px 20px; border: 1px solid rgba(80, 16, 47, 0.25); border-radius: 3px 44px 3px 3px; background: rgba(255, 250, 246, 0.7);}
.home-b .home-door.is-rec figure{margin: -1px -21px 16px; border-radius: 3px 44px 0px 0px;}
.home-b .home-timeline{padding: clamp(56px, 7vw, 96px) 0px; background: linear-gradient(rgb(248, 239, 233) 0%, rgb(246, 236, 230) 50%, rgb(248, 239, 233) 100%);}
.home-b .home-timeline-head p{max-width: 460px; margin: 0px; color: rgb(74, 64, 64); font: 400 15px/1.7 var(--font-body);}
.home-b .timeline{display: grid; grid-template-columns: repeat(7, minmax(0px, 1fr)); gap: 0px; margin: 0px; padding: 34px 0px 0px; list-style: none; position: relative;}
.home-b .timeline::before{content: ""; position: absolute; top: 34px; right: 0px; left: 0px; height: 1px; background: rgba(167, 125, 53, 0.45);}
.home-b .timeline li{position: relative; padding: 28px 14px 0px 0px;}
.home-b .timeline li::before{content: ""; position: absolute; top: -5px; left: 0px; width: 11px; height: 11px; border-radius: 50%; border: 1px solid var(--gold); background: rgb(251, 245, 239);}
.home-b .timeline li:last-child::before{background: var(--pink); border-color: var(--pink);}
.home-b .timeline-num{display: block; margin-bottom: 8px; color: var(--gold); font: 400 22px/1 var(--font-heading);}
.home-b .timeline li:last-child .timeline-num{color: var(--pink);}
.home-b .timeline h3{margin: 0px 0px 6px; color: rgb(48, 41, 44); font: 600 12px/1.4 var(--font-ui);}
.home-b .timeline p{margin: 0px; color: rgb(85, 75, 76); font: 400 13px/1.55 var(--font-body);}
.home-b .home-timeline .actions{margin-top: 34px;}
.home-b .home-voice{display: grid; grid-template-columns: minmax(0px, 1.3fr) minmax(0px, 0.7fr); align-items: center; gap: clamp(24px, 4vw, 64px); padding: clamp(56px, 7vw, 96px) 0px clamp(20px, 3vw, 40px); scroll-margin-top: 40px;}
.home-b .home-voice-card{position: relative; padding: clamp(32px, 4.5vw, 60px) clamp(28px, 4.5vw, 64px) clamp(28px, 3.5vw, 44px); border-radius: 3px 56px 3px 3px; background: linear-gradient(150deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); box-shadow: rgba(58, 13, 36, 0.16) 0px 22px 50px;}
.home-b .home-voice-card .quote-mark{position: absolute; top: 8px; left: 26px; color: rgba(244, 184, 207, 0.32); font: 400 120px/1 var(--font-heading); pointer-events: none;}
.home-b .home-voice-card blockquote{margin: 0px;}
.home-b .home-voice-card blockquote > p{margin: 14px 0px 26px; color: rgb(255, 248, 242); font: italic 400 clamp(24px,2.6vw,36px)/1.28 var(--font-heading);}
.home-b .home-voice-foot{display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; padding-top: 20px; border-top: 1px solid rgba(255, 240, 220, 0.18);}
.home-b .home-voice-card .testimonial-author{display: flex; align-items: center; gap: 12px;}
.home-b .home-voice-card .author-mark{display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(244, 184, 207, 0.6); border-radius: 50%; color: rgb(244, 184, 207); font: 400 18px/1 var(--font-heading);}
.home-b .home-voice-card .testimonial-author strong{display: block; color: rgb(255, 248, 242); font: 600 12px/1.4 var(--font-ui);}
.home-b .home-voice-card .testimonial-author small{display: block; color: rgb(230, 211, 218); font: 400 12px/1.4 var(--font-body);}
.home-b .home-voice-card .testimonial-full{flex-basis: 100%;}
.home-b .home-voice-card .testimonial-full summary{cursor: pointer; color: var(--gold-soft); font: 600 10px/1.5 var(--font-ui); letter-spacing: 0.14em; text-transform: uppercase;}
.home-b .home-voice-card .testimonial-full[open] summary{margin-bottom: 12px;}
.home-b .home-voice-card .testimonial-full p{margin: 0px 0px 1em; color: rgb(234, 221, 225); font: 400 14px/1.7 var(--font-body);}
.home-b .home-voice-second{margin: 0px; padding-left: 24px; border-left: 2px solid var(--gold);}
.home-b .home-voice-second p{margin: 0px 0px 10px; color: var(--plum); font: italic 400 clamp(21px,2vw,27px)/1.35 var(--font-heading);}
.home-b .home-voice-second footer{color: rgb(122, 108, 106); font: 500 11px/1.5 var(--font-ui); letter-spacing: 0.06em; text-transform: uppercase;}
.home-b .home-included{padding: clamp(48px, 6vw, 84px) 0px clamp(20px, 3vw, 40px);}
.home-b .home-included-head{max-width: 760px; margin: 0px 0px 24px;}
.home-b .included-grid{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 0px 32px; margin: 0px; padding: 0px; list-style: none; border-top: 1px solid rgba(167, 125, 53, 0.4);}
.home-b .included-grid li{display: grid; grid-template-columns: 30px minmax(0px, 1fr); gap: 0px 12px; padding: 20px 0px 22px; border-bottom: 1px solid rgba(167, 125, 53, 0.22);}
.home-b .included-check{display: grid; width: 26px; height: 26px; place-items: center; margin-top: 2px; border: 1px solid rgba(138, 100, 38, 0.5); border-radius: 50%; color: var(--pink);}
.home-b .included-check svg{width: 14px; height: 14px; fill: none; stroke: currentcolor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;}
.home-b .included-grid h3{margin: 0px 0px 4px; color: rgb(40, 35, 38); font: 400 20px/1.2 var(--font-heading);}
.home-b .included-grid h3 a{color: inherit; text-decoration: none; transition: color 0.2s;}
.home-b .included-grid h3 a:hover{color: var(--pink);}
.home-b .included-grid p{margin: 0px; color: rgb(85, 75, 76); font: 400 14px/1.6 var(--font-body);}
.home-b .cta-band{padding-top: clamp(40px, 5vw, 64px);}
@media (max-width: 1180px){
  .home-b .timeline{grid-template-columns: repeat(4, minmax(0px, 1fr)); row-gap: 28px;}
  .home-b .timeline::before{display: none;}
  .home-b .timeline li{padding-top: 0px;}
  .home-b .timeline li::before{display: none;}
  .home-b .timeline li{padding-left: 0px; border-top: 1px solid rgba(167, 125, 53, 0.3); padding-top: 16px;}
}
@media (max-width: 820px){
  .home-b .reasons-list{grid-template-columns: 1fr;}
  .home-b .reason, .home-b .reason + .reason{padding: 22px 0px 24px; border-right: 0px; border-bottom: 1px solid rgba(167, 125, 53, 0.24);}
  .home-b .home-doors-grid{grid-template-columns: 1fr 1fr;}
  .home-b .home-door.is-rec{grid-column: 1 / -1;}
  .home-b .home-door.is-rec img{aspect-ratio: 2 / 1;}
  .home-b .timeline{grid-template-columns: repeat(2, minmax(0px, 1fr)); column-gap: 24px;}
  .home-b .home-voice{grid-template-columns: 1fr;}
  .home-b .included-grid{grid-template-columns: 1fr 1fr;}
}
@media (max-width: 620px){
  .home-b .nav{height: 84px; min-height: 84px;}
  .home-b .home-doors-grid{grid-template-columns: 1fr; gap: 16px;}
  .home-b .home-door.is-rec img{aspect-ratio: 1.5 / 1;}
  .home-b .timeline{grid-template-columns: 1fr;}
  .home-b .home-voice-card{padding: 28px 20px 24px; border-radius: 3px 36px 3px 3px;}
  .home-b .included-grid{grid-template-columns: 1fr;}
}
.page-home.home-b .topbar{position: absolute; inset: 0px 0px auto; border-bottom: 0px; background: linear-gradient(rgba(251, 245, 239, 0.98), rgba(251, 245, 239, 0.95));}
.page-home.home-b .topbar::after{display: block;}
.page-home.home-b .nav{height: 112px; min-height: 112px;}
.page-home.home-b .home-reasons{border-top: 1px solid rgba(167, 125, 53, 0.3);}
@media (max-width: 620px){
  .page-home.home-b .nav{height: 84px; min-height: 84px;}
}
.page-gallery .gallery-hero{padding-bottom: clamp(20px, 3vw, 32px);}
.page-gallery .gallery-hero .lead{max-width: 640px;}
.page-gallery .gallery-section{padding: clamp(28px, 4vw, 48px) 0px clamp(56px, 7vw, 92px);}
.gal-j .squares{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 8px;}
.gal-j .square{position: relative; margin: 0px; overflow: hidden; border-radius: 2px; background: rgb(230, 214, 204);}
.gal-j .square:first-child{grid-area: span 2 / span 2;}
.gal-j .square button{display: block; width: 100%; height: 100%; padding: 0px; border: 0px; background: transparent; cursor: zoom-in;}
.gal-j .square img{display: block; width: 100%; height: 100%; aspect-ratio: 1 / 1; object-fit: cover; transition: transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1);}
.gal-j .square:hover img{transform: scale(1.04);}
.gal-j .square figcaption{position: absolute; inset: auto 0px 0px; padding: 28px 14px 12px; background: linear-gradient(transparent, rgba(35, 20, 24, 0.65)); color: rgb(255, 250, 246); font: 400 15px/1.3 var(--font-heading); opacity: 0; transform: translateY(6px); transition: opacity 0.25s, transform 0.25s; pointer-events: none;}
.gal-j .square:hover figcaption{opacity: 1; transform: none;}
.gal-j .square-more{display: flex; flex-direction: column; justify-content: center; gap: 8px; padding: 22px; aspect-ratio: 1 / 1; background: linear-gradient(150deg,var(--plum),var(--plum-deep)); color: rgb(255, 248, 242); text-decoration: none;}
.gal-j .square-more .eyebrow{color: var(--gold-soft);}
.gal-j .square-more strong{font: 400 clamp(20px,1.8vw,26px)/1.15 var(--font-heading);}
.gal-j .square-arrow{color: rgb(244, 184, 207); font-size: 22px; transition: transform 0.25s;}
.gal-j .square-more:hover .square-arrow{transform: translateX(6px);}
@media (max-width: 820px){
  .gal-j .squares{grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 6px;}
  .gal-j .square figcaption{opacity: 1; transform: none; font-size: 13px; padding: 20px 10px 8px;}
}
@media (max-width: 480px){
  .gal-j .squares{grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 5px;}
  .gal-j .square-more{padding: 14px;}
}
.cta-band-card{position: relative; isolation: isolate; overflow: hidden; transition: transform 0.35s cubic-bezier(0.2, 0.65, 0.3, 1), box-shadow 0.35s;}
.cta-band-card:hover{transform: translateY(-3px); box-shadow: rgba(58, 13, 36, 0.24) 0px 30px 60px;}
.cta-band-card::before{content: ""; position: absolute; z-index: -1; right: -12%; top: -60%; width: 55%; aspect-ratio: 1 / 1; border-radius: 50%; background: radial-gradient(circle, rgba(244, 184, 207, 0.28), rgba(244, 184, 207, 0) 62%); pointer-events: none;}
.cta-band-mark{position: absolute; z-index: -1; right: clamp(16px, 4vw, 48px); bottom: -0.32em; color: rgba(255, 248, 242, 0.05); font: 400 clamp(150px,18vw,260px)/1 var(--font-heading); letter-spacing: -0.06em; pointer-events: none; user-select: none;}
.cta-band .display .accent em{font-style: italic;}
.cta-band-points{display: flex; flex-wrap: wrap; gap: 8px 0px; margin: 18px 0px 0px; padding: 0px; list-style: none;}
.cta-band-points li{display: inline-flex; align-items: center; color: rgb(230, 211, 218); font: 500 11px/1.4 var(--font-ui); letter-spacing: 0.08em; text-transform: uppercase;}
.cta-band-points li::before{content: ""; width: 6px; height: 6px; margin-right: 10px; border-radius: 50%; background: rgb(244, 184, 207);}
.cta-band-points li + li::before{margin-left: 18px;}
.cta-band-actions{position: relative;}
.cta-band-phone{display: block; margin-top: 4px; color: rgb(217, 195, 204); font: 400 12px/1.5 var(--font-body); text-align: center; letter-spacing: 0.02em;}
@media (max-width: 820px){
  .cta-band-mark{right: 8px; font-size: 150px;}
  .cta-band-phone{flex-basis: 100%; text-align: left;}
}
.why-honest-band{max-width: 820px; padding: clamp(40px, 5vw, 64px) 0px clamp(28px, 4vw, 44px); text-align: center;}
.why-honest-band .eyebrow{color: rgb(138, 100, 38);}
.why-honest-band p{margin: 14px 0px 20px; color: rgb(63, 54, 56); font: italic 400 clamp(21px,2.2vw,30px)/1.4 var(--font-heading);}
.why-honest-band strong{color: var(--plum); font-weight: 400;}
.why-honest-band a{display: inline-flex; align-items: center; gap: 10px; padding-bottom: 3px; border-bottom: 1px solid rgba(167, 125, 53, 0.5); color: var(--plum); font: 600 11px/1.5 var(--font-ui); letter-spacing: 0.1em; text-transform: uppercase;}
.why-honest-band a:hover{color: var(--pink); border-color: var(--pink);}
.why-voices-simple{padding: clamp(28px, 4vw, 48px) 0px clamp(16px, 3vw, 32px); text-align: center;}
.why-voices-simple .eyebrow{color: rgb(138, 100, 38); margin-bottom: 18px;}
.why-voices-simple-grid{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 20px; max-width: 980px; margin: 0px auto 24px;}
.why-voices-simple blockquote{margin: 0px; padding: 24px 26px; border: 1px solid rgba(167, 125, 53, 0.4); border-radius: 3px 32px 3px 3px; background: rgba(255, 250, 246, 0.7); text-align: left;}
.why-voices-simple blockquote p{margin: 0px 0px 10px; color: var(--plum); font: italic 400 clamp(18px,1.6vw,22px)/1.4 var(--font-heading);}
.why-voices-simple footer{color: rgb(122, 108, 106); font: 500 11px/1.5 var(--font-ui); letter-spacing: 0.06em; text-transform: uppercase;}
.why-voices-simple .btn.outline{min-width: 0px; border-color: var(--gold); background: transparent; color: var(--plum);}
@media (max-width: 820px){
  .why-voices-simple-grid{grid-template-columns: 1fr;}
}
@media (max-width: 620px){
  .why-hero.is-center, .why-honest-band, .why-voices-simple{text-align: left;}
  .why-voices-simple .btn{width: 100%;}
}
.why-m .why-m-hero{padding: clamp(44px, 6vw, 80px) 0px 0px;}
.why-m .why-m-hero-inner{text-align: center;}
.why-m .why-m-hero .display{max-width: 760px; margin: 12px auto 0px; color: var(--ink); font-size: clamp(48px, 7vw, 100px); line-height: 0.96;}
.why-m .why-m-photo{width: min(1190px, 100% - 64px); margin: clamp(28px, 4vw, 48px) auto 0px;}
.why-m .why-m-photo img{display: block; width: 100%; aspect-ratio: 2.3 / 1; object-fit: cover; object-position: center 30%; border-radius: 3px 64px 3px 3px; box-shadow: rgba(58, 13, 36, 0.14) 0px 26px 60px;}
.why-m .why-m-intro{max-width: 720px; padding: clamp(28px, 4vw, 44px) 0px 0px; text-align: center;}
.why-m .why-m-intro .lead{color: rgb(74, 64, 66); font-size: clamp(17px, 1.35vw, 20px); line-height: 1.7;}
.why-m .why-m-manifesto{padding: clamp(48px, 6vw, 84px) 0px clamp(20px, 3vw, 36px);}
.why-m .why-m-head{text-align: center; margin-bottom: 28px;}
.why-m .why-m-head .eyebrow{color: rgb(138, 100, 38);}
.why-m .why-m-list{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 0px clamp(40px, 6vw, 96px); margin: 0px; padding: 0px; list-style: none; border-top: 1px solid rgba(167, 125, 53, 0.4);}
.why-m .why-m-list li{position: relative; padding: 34px 0px 36px; border-bottom: 1px solid rgba(167, 125, 53, 0.24);}
.why-m .why-m-list li:nth-last-child(-n+2){border-bottom: 0px;}
.why-m .why-m-num{display: block; margin-bottom: 10px; color: rgba(194, 24, 91, 0.18); font: 400 clamp(64px,7vw,96px)/.9 var(--font-heading); letter-spacing: -0.04em;}
.why-m .why-m-list h2{margin: 0px 0px 10px; color: rgb(40, 35, 38); font: 400 clamp(30px,3.2vw,44px)/1.05 var(--font-heading);}
.why-m .why-m-list h2 em{color: var(--pink); font-style: italic;}
.why-m .why-m-list p{max-width: 44ch; margin: 0px; color: rgb(74, 64, 66); font: 400 15px/1.75 var(--font-body);}
@media (max-width: 820px){
  .why-m .why-m-list{grid-template-columns: 1fr;}
  .why-m .why-m-list li:nth-last-child(2){border-bottom: 1px solid rgba(167, 125, 53, 0.24);}
  .why-m .why-m-photo img{aspect-ratio: 1.6 / 1;}
}
@media (max-width: 620px){
  .why-m .why-m-hero-inner, .why-m .why-m-intro, .why-m .why-m-head{text-align: left;}
  .why-m .why-m-hero .display{margin-left: 0px; font-size: clamp(40px, 12vw, 56px);}
  .why-m .why-m-photo{width: calc(100% - 36px);}
  .why-m .why-m-photo img{aspect-ratio: 1.3 / 1; border-radius: 3px 36px 3px 3px;}
  .why-m .why-m-num{font-size: 56px;}
}

/* Mobile: footer columns may never push past the screen; one column on narrow phones */
@media(max-width:620px){.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-col a span,.footer-col .footer-meta span{min-width:0;overflow-wrap:anywhere}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr;gap:24px}.footer-col:last-child{flex-direction:column;gap:9px}.page-home .site-footer .wrap{width:var(--content)}}

/* Mobile readability: 11px floor for labels, 44px tap areas for standalone links and the menu button */
@media(max-width:620px){
  .eyebrow,.col-badge,.way-label,.chip,.blog-topics a,.footer-col h3,.about-facts dd,.offering-kicker,.blog-card-body .eyebrow,.related-card .eyebrow,.home-journal-list .eyebrow,.home-offer .eyebrow,.tile-photo figcaption .eyebrow,.cta-band-points li,.article-meta,.blog-meta{font-size:11px}
  summary,.testimonial-full summary{font-size:12px}
  .topbar .brand-type>small{font-size:9px;letter-spacing:.4em}
  .menu-toggle{width:44px;height:44px}
  .home-link,.about-strip-link,.about-quote-link,.contact-side-link,.article-back,.article-more a,.why-honest a,.why-honest-band a,.why3-link,.tour-link,.gallery-note a,.contact-form-alt a,.blog-quick a,.route-door-more{min-height:44px;display:inline-flex;align-items:center}
  .article-back{margin-bottom:12px}
  .contact-form-alt a,.gallery-note a{display:inline-block;padding:12px 0}
}
/* Mobile floor, enforced over the older page-specific rules */
@media(max-width:620px){
  .eyebrow,[class$="-kicker"],.col-badge,.way-label,.chip,.blog-topics a,.footer-col h3,.about-facts dd,.about-strip-grid figcaption span,.tile-photo figcaption .eyebrow,.cta-band-points li,.article-meta,.blog-meta{font-size:11px!important}
  summary{font-size:12px!important}
  .topbar .menu-toggle{width:44px;height:44px}
  .blog-topics a{min-height:44px!important}
  .included-grid h3 a{display:inline-block;padding:9px 0}
}
/* Footer on phones: social block stacks on the left under its heading */
@media(max-width:620px){.footer-col:last-child{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:9px}.footer-col:last-child h3{flex-basis:auto;margin-bottom:6px}}

/* Mobile contact bar: fixed to the bottom on phones, replaces the floating WhatsApp bubble there */
.mobile-bar{display:none}
@media(max-width:620px){
  .mobile-bar{position:fixed;z-index:45;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:0;padding:8px 10px calc(8px + env(safe-area-inset-bottom));border-top:1px solid rgba(167,125,53,.3);background:rgba(251,245,239,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 -10px 30px rgba(58,13,36,.08)}
  .mobile-bar a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;margin:0 3px;border:1px solid rgba(167,125,53,.45);border-radius:999px;color:var(--plum);font:600 11px/1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;background:rgba(255,250,246,.8)}
  .mobile-bar a.is-primary{border-color:var(--pink);background:var(--pink);color:#fff}
  .mobile-bar svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .whatsapp-float{display:none}
  body{padding-bottom:72px}
  .footer-bottom{padding-bottom:28px}
  body:has(.lightbox.open) .mobile-bar,body:has(.navlinks.open) .mobile-bar{display:none}
  .page-contact .mobile-bar a.is-primary{display:none}
  .page-contact .mobile-bar{grid-template-columns:1fr 1fr}
}
/* Home hero on phones: content starts just below the overlaid header, no dead space */
@media(max-width:620px){.page-home .hero{padding-top:132px}}

/* Mobile menu v2: full-screen cream sheet under the header */
.navlinks-extra{display:none}
body.menu-open{overflow:hidden}
@media(max-width:1180px){
  .topbar .navlinks{position:fixed;z-index:35;top:0;right:0;bottom:0;left:0;display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;margin:0;padding:98px 24px 32px;overflow-y:auto;background:linear-gradient(180deg,#fbf5ef 0%,#f8efe9 100%);box-shadow:none;border:0;border-radius:0}
  .topbar .navlinks.open{display:flex;animation:menu-in .28s cubic-bezier(.2,.65,.3,1) both}
  @keyframes menu-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
  .topbar .navlinks>a{display:flex;align-items:center;justify-content:space-between;min-height:0;padding:18px 0;border:0;border-bottom:1px solid rgba(167,125,53,.26);color:#282326;font:400 clamp(26px,7vw,32px)/1.1 var(--font-heading);letter-spacing:0;text-transform:none}
  .topbar .navlinks>a:first-child{border-top:1px solid rgba(167,125,53,.26)}
  .topbar .navlinks>a:after{content:"→";color:var(--gold);font-size:20px;opacity:.7}
  .topbar .navlinks>a.active{color:var(--pink)}
  .topbar .navlinks>a.active:after{color:var(--pink);opacity:1}
  .navlinks.open .navlinks-extra{display:flex;flex-direction:column;gap:18px;margin-top:auto;padding-top:28px}
  .navlinks-contact{width:100%;min-height:54px}
  .navlinks-reach,.navlinks-social{display:flex;flex-wrap:wrap;gap:8px 22px}
  .navlinks-reach a{color:var(--plum);font:600 12px/1.5 var(--font-ui);letter-spacing:.06em}
  .navlinks-social a{color:#7c5a2c;font:600 10px/1.5 var(--font-ui);letter-spacing:.16em;text-transform:uppercase}
  .topbar{z-index:40}
  body.menu-open .topbar{position:fixed;top:0;right:0;left:0;background:#fbf5ef;box-shadow:none}
  body.menu-open .topbar:after{display:none}
  .topbar .menu-toggle{position:relative;z-index:41}
  body.menu-open .whatsapp-float{display:none}
}
@media(max-width:620px){.topbar .navlinks{padding-top:88px}}
/* While the menu is open the header must not create a containing block (no filters/transforms), so the sheet spans the viewport */
@media(max-width:1180px){body.menu-open .topbar{backdrop-filter:none;-webkit-backdrop-filter:none;filter:none;transform:none}}
/* Mobile menu extras: reset the generic menu-link styles for the contact, phone and social entries */
@media(max-width:1180px){
  .topbar .navlinks .navlinks-extra a{display:inline-flex;min-height:0;padding:0;border:0;letter-spacing:.06em;text-transform:none;font:600 13px/1.5 var(--font-ui);color:var(--plum)}
  .topbar .navlinks .navlinks-extra a:after{content:none}
  .topbar .navlinks .navlinks-extra a.navlinks-contact{width:100%;min-height:54px;align-items:center;justify-content:center;gap:12px;padding:0 20px;border:1px solid var(--pink);border-radius:5px;background:var(--pink);color:#fff;font:600 11px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase}
  .topbar .navlinks .navlinks-social a{color:#7c5a2c;font:600 10px/1.5 var(--font-ui);letter-spacing:.16em;text-transform:uppercase}
}
