/* ENTYRE | The Editorial Edit | global staging-only art direction, 2026-10-26.
   A quiet luxury visual system: bone, parchment, dark espresso, soft bronze.
   Maintain real clinical photographs and unaltered before/after evidence. */
:root{
 --entyre-ink:#231f1c;
 --entyre-soft-ink:#625a51;
 --entyre-espresso:#24211e;
 --entyre-espresso-deep:#1b1917;
 --entyre-bone:#f8f5f0;
 --entyre-paper:#f4f0e9;
 --entyre-parchment:#ebe4db;
 --entyre-sand:#e3d9cc;
 --entyre-line:rgba(68,55,43,.19);
 --entyre-accent:#aa9278;
 --entyre-cream:#f5ede2;
 --entyre-hairline:rgba(237,221,199,.24);
 --entyre-display:"Very Vogue Display",Georgia,serif;
 --entyre-text:"Very Vogue Text",Georgia,serif;
 --entyre-sans:"Overpass","Helvetica Neue",Arial,sans-serif;
}
html{scroll-padding-top:96px;scroll-behavior:smooth}
body{background:var(--entyre-bone);color:var(--entyre-ink);font-family:var(--entyre-sans)!important;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
body::selection,body *::selection{background:#d2bda4;color:#201b18}
img{display:block;max-width:100%}
main{overflow:clip}
a,button,input,select,textarea{touch-action:manipulation}
:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid #aa8866!important;outline-offset:4px!important}
:where(button,input,select,textarea){font-family:var(--entyre-sans)!important}
/* Consistent editorial type hierarchy */
main h1,main h2{font-family:var(--entyre-display)!important;letter-spacing:-.035em;font-weight:400!important;text-wrap:balance}
main h1{line-height:1.015}
main h2{line-height:1.085}
main h3,main .treatment strong,main .ef-brand h3{font-family:var(--entyre-text)!important;font-weight:400!important;letter-spacing:-.012em}
:where(main p,main li,main span){text-wrap:pretty}
:where(.eyebrow2,.eyebrow,.bridal-eyebrow,.clear-eyebrow,.ef-kicker,.sf-kicker,.fm-label,.ent-well-small,.wbp-eyebrow,.entyre-op-eyebrow,.curated-overline){font-family:var(--entyre-sans)!important;font-size:10px;letter-spacing:.2em!important;font-weight:300!important;text-transform:uppercase;line-height:1.7}
/* Navigation: dark, discreet and sharply delineated */
.site-header{position:sticky!important;top:0;z-index:1000;background:var(--entyre-espresso-deep)!important;color:var(--entyre-cream)!important;box-shadow:none!important;border-bottom:1px solid rgba(246,235,218,.16);padding:18px clamp(25px,4.5vw,88px)!important;min-height:78px;gap:24px}
.site-header::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(222,191,157,.6) 50%,transparent 100%);pointer-events:none}
.site-header .wordmark{min-width:0;flex:0 0 auto}
.site-header .wordmark .brand-logo{height:29px;max-width:180px;width:auto;object-fit:contain}
.site-header nav#main-nav{gap:clamp(10px,1.38vw,22px)!important;align-items:center}
.site-header nav#main-nav>a{position:relative;font-family:var(--entyre-sans)!important;font-size:10px;letter-spacing:.12em!important;line-height:1.35;text-transform:uppercase;padding:8px 0;white-space:nowrap;text-decoration:none;transition:color .25s ease,opacity .25s ease}
.site-header nav#main-nav>a:not(:last-child)::after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:0;background:var(--entyre-accent);transition:right .25s ease}
.site-header nav#main-nav>a:not(:last-child):hover::after,.site-header nav#main-nav>a[aria-current="page"]::after{right:0}
.site-header nav#main-nav>a[aria-current="page"]{color:#f7ede1;border-bottom:0;padding-bottom:8px}
.site-header nav#main-nav>a:last-child{display:inline-flex;align-items:center;gap:5px;justify-content:center;padding:13px 18px!important;margin-left:4px;border:1px solid #a9957e;color:#f7ebde;background:transparent;font-size:10px;letter-spacing:.14em!important;min-height:43px;transition:background .25s ease,color .25s ease}
.site-header nav#main-nav>a:last-child:hover{background:#f3e9dc;color:#231f1c;opacity:1}
.site-header nav#main-nav>a:last-child .inline-arrow-icon{height:13px;width:13px}
/* Hero layouts all take the same editorial rhythm */
.home-hero,.bridal-hero,.wbp-hero,.entyre-op-hero{background:var(--entyre-espresso-deep)!important;color:var(--entyre-cream)!important}
.home-hero{display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);min-height:min(81vh,820px);position:relative}
.home-hero .home-hero-copy{padding:clamp(84px,9vw,140px) 7% clamp(85px,9vw,126px) clamp(35px,8.1vw,150px)!important;position:relative;z-index:1}
.home-hero .home-hero-copy::before{content:"EST. 2015   /   SAUGUS, MASSACHUSETTS";font:300 9px/1.7 var(--entyre-sans);color:#cabaa8;letter-spacing:.19em;position:absolute;bottom:36px;left:clamp(35px,8.1vw,150px)}
.home-hero .eyebrow2{color:#d1baa2!important;font-size:10px!important}
.home-hero h1{font-size:clamp(67px,8.4vw,133px)!important;line-height:.94!important;letter-spacing:-.055em!important;color:#fcf7f0;margin:24px 0 31px!important;white-space:normal}
.home-hero h1 em{font-family:var(--entyre-display)!important;font-style:italic!important;font-weight:400;letter-spacing:-.04em;font-size:.88em;color:#d7bda1}
.home-hero p{font-size:14px!important;line-height:1.92!important;max-width:420px;color:#d9cfc4!important}
.home-hero .home-hero-media{position:relative;min-height:650px;isolation:isolate;background:#8b8178}
.home-hero .home-hero-media::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(24,21,19,.14),transparent 23%),linear-gradient(0deg,rgba(26,22,19,.3),transparent 27%);pointer-events:none}
.home-hero .home-hero-media::after{content:"THE ENTYRE EDIT   /   BEAUTY IN EVERY FORM";position:absolute;z-index:2;right:36px;bottom:27px;font:300 9px/1.7 var(--entyre-sans);letter-spacing:.17em;color:#fff7ed;text-shadow:0 1px 10px #181512}
.home-hero .home-hero-media img{filter:saturate(.81) contrast(1.045)!important;object-fit:cover!important;object-position:center 43%;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.home-hero .hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:30px}
.home-hero .hero-actions a:first-child{display:inline-flex;gap:12px;align-items:center;background:#f3eadf;color:#24211e;border:1px solid #f3eadf;padding:16px 20px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;transition:background .25s,color .25s}
.home-hero .hero-actions a:first-child:hover{background:transparent;color:#f3eadf}
.home-hero .hero-actions a:last-child{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(231,213,191,.58);padding:16px 20px;color:#f3e9dd;font-size:10px;text-transform:uppercase;letter-spacing:.13em;transition:background .25s}
.home-hero .hero-actions a:last-child:hover{background:rgba(255,255,255,.10)}
.home-ticker{background:#d7c6b4!important;color:#29241f!important;display:flex;justify-content:center;align-items:center;gap:clamp(16px,3.3vw,58px);min-height:56px;padding:13px 7%;flex-wrap:wrap}
.home-ticker span{font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.home-ticker span:nth-child(even){font-size:0!important;line-height:0}
.home-ticker span:nth-child(even)::before{content:"/";font:300 12px/1 var(--entyre-sans);color:#7f6752}
.home-intro{padding:clamp(98px,12vw,155px) 9%!important;text-align:center!important;background:var(--entyre-bone)!important}
.home-intro .eyebrow2{color:#9a7e61}
.home-intro h2{font-size:clamp(56px,7vw,99px)!important;max-width:980px;margin:23px auto 26px!important;line-height:1.04}
.home-intro p{max-width:730px;margin:0 auto;font-size:15px!important;line-height:1.95!important;color:#6b6157}
.photo-service-grid{background:var(--entyre-bone)!important;gap:clamp(14px,1.65vw,27px)!important;padding:0 6% 130px!important}
.photo-service{min-width:0;display:flex;flex-direction:column;overflow:hidden}
.photo-service-media{background:#e5ded5!important;overflow:hidden}
.photo-service-media img{filter:saturate(.83) contrast(1.03)!important;transition:transform .85s cubic-bezier(.2,.8,.2,1)!important}
.photo-service:hover .photo-service-media img{transform:scale(1.025)}
.photo-service-text{padding:23px 2px 10px!important;border-bottom:1px solid var(--entyre-line)!important;display:flex;gap:15px}
.photo-service-text h3{font-size:clamp(27px,3vw,38px)!important;line-height:1.12!important;margin:0 0 8px!important}
.photo-service-text p{font-size:12px!important;letter-spacing:0!important;color:#6d6257!important;line-height:1.7!important}
.photo-service-text svg{color:#5e4b3a}
/* Service categories and list rows: airy / thin hairlines, never chunky buttons */
.clear-intro,.clear-med-statement,.curated-gallery-intro{background:var(--entyre-parchment)!important}
.clear-intro{padding-top:clamp(95px,10vw,150px)!important;padding-bottom:clamp(85px,9vw,110px)!important}
.clear-intro h1{font-size:clamp(68px,8.5vw,122px)!important;line-height:1.02!important;max-width:1100px}
.clear-category{padding-top:clamp(82px,9vw,120px)!important;padding-bottom:clamp(82px,9vw,120px)!important;border-color:var(--entyre-line)!important}
.clear-category:nth-of-type(even){background:var(--entyre-paper)!important}
.clear-rows,.clear-item{border-color:var(--entyre-line)!important}
.clear-item{padding:30px 0!important;gap:24px!important}
.clear-item h3{font-size:clamp(24px,2.6vw,36px)!important}
.clear-item p{color:#72675d!important}
.clear-item:hover h3{color:#8d7056}
.clear-actions .clear-book,.clear-book,.ef-book{border:1px solid transparent;transition:background .25s,color .25s,border-color .25s;letter-spacing:.14em}
.clear-actions .clear-book:hover,.ef-book:hover{background:#92745b!important}
/* Service-page hero and editorial bands */
.hero-in{background:var(--entyre-espresso)!important;color:var(--entyre-cream)!important;position:relative;min-height:clamp(330px,37vw,540px)}
.hero-in:not(.photo-hero){padding:clamp(105px,10vw,160px) 8% clamp(80px,9vw,110px)!important}
.hero-in h1{font-size:clamp(59px,7.5vw,116px)!important;line-height:1.015!important;color:#f8f1e8}
.hero-in>p,.hero-in .hero-copy>p{font-size:15px;line-height:1.85;color:#d8cabe}
.hero-in .eyebrow2{color:#ceb69a!important}
.photo-hero{display:grid!important;grid-template-columns:minmax(0,47%) minmax(0,53%);align-items:stretch;min-height:500px;padding:0!important;gap:0!important}
.photo-hero .hero-copy{padding:clamp(85px,9vw,140px) clamp(25px,5.8vw,92px)!important;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;min-width:0;min-height:440px}
.photo-hero .hero-photo{height:auto!important;min-height:500px;align-self:stretch;position:relative;background:#e3d9cd;overflow:hidden}
.photo-hero .hero-photo img{display:block;height:100%!important;width:100%!important;object-fit:cover!important;object-position:center 42%;filter:saturate(.83) contrast(1.03)}
.photo-hero .hero-photo::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);pointer-events:none}
/* Editorial room to breathe */
.content:not(.split),.bridal-moments,.entyre-related,.entyre-hair-gallery,.curated-collection{padding-top:clamp(75px,8.5vw,115px);padding-bottom:clamp(75px,8.5vw,115px)}
.content.split{column-gap:clamp(40px,8vw,145px)}
.content p,.entyre-related p{line-height:1.9}
.content>h2,.content.split h2{font-size:clamp(45px,5.5vw,77px);letter-spacing:-.03em}
.treatment{border-color:var(--entyre-line)!important;padding:23px 0}
.treatment strong{font-size:clamp(24px,2.2vw,33px)!important;line-height:1.3}
.treatment span{color:#675d53;font-size:13px;line-height:1.75}
.entyre-editorial-story,.entyre-photo-story,.entyre-wellness-story,.entyre-treatment-infocus{min-height:0}
.entyre-editorial-story-image img,.entyre-wellness-image img,.entyre-treatment-infocus>img{filter:saturate(.9) contrast(1.025)}
/* Card system, more architectural and less like a template */
:where(.ef-three article,.ef-brand,.ef-two article,.clear-goal-grid article,.wbp-basics-grid article,.entyre-op-grid article,.entyre-op-about-links a,.tile,.fm-card){border:1px solid var(--entyre-line);box-shadow:none!important;border-radius:0!important;transition:border-color .25s ease,background .25s ease}
:where(.ef-three article,.ef-brand,.clear-goal-grid article,.entyre-op-grid article,.entyre-op-about-links a,.tile):hover{border-color:rgba(110,82,57,.46)}
.entyre-op-grid article{background:#e9dfd4!important}
.entyre-op-form,.wbp-form{border:1px solid rgba(118,94,74,.19);box-shadow:none!important}
.entyre-op-field input,.entyre-op-field textarea,.entyre-op-field select,.wbp-field input{background:#fffdf9!important;border-color:#b7a899!important;border-radius:0!important;min-height:51px}
.entyre-op-field :is(input,textarea,select):focus,.wbp-field input:focus{border-color:#86694d!important;box-shadow:0 0 0 2px rgba(135,100,69,.08)}
.wbp-choices label{border-color:var(--entyre-line)!important;border-radius:0}
.wbp-choices label:has(input:checked){border-color:#826850!important;background:#f3ece2!important}
.wbp-lead-grid{gap:19px!important}
.wbp-hero,.entyre-op-hero{min-height:clamp(540px,52vw,720px)}
.wbp-hero-copy,.entyre-op-hero-copy{position:relative;z-index:1}
.wbp-hero-image img,.entyre-op-hero-image img{filter:saturate(.83) contrast(1.04)!important}
.wbp-form,.entyre-op-form{background:#f7f3ec!important}
/* Service FAQs: refined rules, enlarged clickable area */
.faq{border-top:1px solid var(--entyre-line)}
.faq details{border-bottom:1px solid var(--entyre-line);padding-block:3px}
.faq summary{padding:19px 28px 19px 0;cursor:pointer;color:#312a24;line-height:1.5;font-size:14px}
.faq details p{font-size:13px;line-height:1.8;color:#685e53}
/* Calls to action: consistent finish, respectful of section-specific light/dark palettes */
a.cta,.button,.clear-book,.ef-book,.wbp-submit,.entyre-op-form-footer button{border-radius:0!important}
a.cta:hover,.wbp-submit:hover,.entyre-op-form-footer button:hover{background:#7e644e!important;color:#faf4ec!important}
:where(.text-link,.clear-explore,.ef-more,.entyre-op-about-links small){text-underline-offset:6px}
/* Footer: quiet, useful, complete */
.site-footer.entyre-full-footer{background:var(--entyre-espresso-deep)!important;border-top:1px solid rgba(233,207,178,.20)!important;gap:clamp(24px,3.2vw,54px);padding-block:clamp(67px,7vw,101px)!important}
.entyre-full-footer .entyre-footer-heading{color:#eee2d3!important;font-size:23px!important;margin-bottom:27px!important}
.entyre-full-footer .entyre-hours-list dt,.entyre-full-footer .entyre-hours-list dd,.entyre-full-footer a{font-size:12px!important}
.entyre-full-footer .entyre-footer-directions{padding-bottom:8px}
.entyre-full-footer .entyre-op-footer-links{margin-top:18px!important}
.site-footer + .legal,.legal{background:#171512!important;color:#c8b8a6!important;border-top:1px solid rgba(240,221,201,.11)}
/* Smooth, low-key interactions */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .photo-service:hover .photo-service-media img{transform:scale(1.028)}
 .curated-photo img{transition:transform .8s ease}
 .curated-photo:hover img{transform:scale(1.015)}
}
@media(max-width:1180px){
 .site-header{padding:14px 6%!important;min-height:70px}
 .site-header nav#main-nav{background:#1b1917!important;border-top:1px solid rgba(255,255,255,.15);margin-top:13px;padding-top:5px!important;padding-bottom:16px!important}
 .site-header nav#main-nav a{color:#f9f1e7!important}
 .site-header nav#main-nav a:last-child{margin-top:18px!important;padding:14px 18px!important}
 .site-header nav#main-nav>a:not(:last-child)::after{display:none}
 .site-header .mobile-toggle{border:1px solid rgba(240,223,203,.45);padding:10px 12px;background:transparent!important;color:#f4ece1!important}
}
@media(max-width:800px){
 .home-hero{grid-template-columns:1fr;min-height:0}
 .home-hero .home-hero-copy{min-height:0;padding:82px 7% 103px!important}
 .home-hero .home-hero-copy::before{left:7%;bottom:31px}
 .home-hero h1{font-size:clamp(75px,12.7vw,110px)!important;max-width:650px}
 .home-hero .home-hero-media{min-height:0;height:min(87vw,570px)}
 .home-hero .home-hero-media::after{bottom:20px;right:20px}
 .home-intro{padding:82px 7%!important}
 .home-intro h2{font-size:clamp(55px,9.5vw,77px)!important}
 .photo-service-grid{padding:0 6% 90px!important}
 .photo-hero{grid-template-columns:1fr;min-height:0}
 .photo-hero .hero-copy{min-height:0;padding:79px 7% 70px!important}
 .photo-hero .hero-photo{height:clamp(300px,60vw,520px)!important;min-height:0}
 .clear-category{padding-top:73px!important;padding-bottom:73px!important}
}
@media(max-width:570px){
 .home-hero h1{font-size:clamp(69px,14vw,89px)!important}
 .home-hero .hero-actions{gap:11px}
 .home-hero .hero-actions a:first-child,.home-hero .hero-actions a:last-child{padding:15px 17px;font-size:10px}
 .home-hero .home-hero-media{height:390px}
 .home-ticker{gap:13px;padding:16px 5%;min-height:0}
 .home-ticker span{font-size:9px!important;letter-spacing:.10em!important}
 .home-ticker span:nth-child(even){font-size:0!important}
 .home-intro{padding:75px 7%!important}
 .home-intro h2{font-size:clamp(49px,12vw,67px)!important}
 .photo-service-grid{padding:0 6% 72px!important}
 .hero-in:not(.photo-hero){padding:82px 7% 70px!important}
 .hero-in h1{font-size:clamp(54px,11vw,71px)!important}
 .photo-hero .hero-copy{padding:70px 7% 60px!important}
 .photo-hero .hero-photo{height:340px!important}
 .clear-intro{padding:80px 7% 70px!important}
 .clear-intro h1{font-size:clamp(62px,11.4vw,86px)!important}
 .clear-item{padding:26px 0!important}
 .site-footer.entyre-full-footer{padding:63px 7%!important}
 .site-header .wordmark .brand-logo{max-width:154px;height:26px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
