/* NORTE BARBER CLUB | Concept demo by BrenPages — V2.3.9 */
:root { color-scheme: dark; }
.norte-demo{--norte-bg:#11110f;--norte-deep:#0a0b0b;--norte-panel:#1c1a17;--norte-gold:#dbb574;--norte-light:#f8f1e5;--norte-muted:#c6b9a9;--norte-border:rgba(226,192,140,.2);color:var(--norte-light);background:var(--norte-bg);font-family:'Segoe UI',Arial,sans-serif;overflow-x:clip}
.norte-demo *{box-sizing:border-box}
.norte-demo a:focus-visible,.norte-demo button:focus-visible{outline:2px solid #f9d18b;outline-offset:4px}
.norte-ribbon{height:auto;min-height:33px;background:#070908;color:#d3c1a5;gap:30px}
.norte-ribbon a{color:#f1ce91}
.norte-header{min-height:79px;height:auto;padding:13px clamp(20px,5vw,84px);background:rgba(13,13,12,.94)!important;border-bottom:1px solid var(--norte-border)!important;gap:24px}
.norte-brand,.norte-footer-brand>a{display:flex;flex-direction:column;align-items:center;width:max-content;color:#f7e2bd;text-decoration:none;font-family:Georgia,serif}
.norte-brand strong,.norte-footer-brand strong{font-size:1.82rem;line-height:.94;letter-spacing:.25em;font-weight:400;padding-left:.25em}
.norte-brand small,.norte-footer-brand small{margin-top:6px;letter-spacing:.37em;padding-left:.37em;font:700 .44rem/1.3 'Segoe UI',sans-serif}
.norte-header .demo-nav{gap:clamp(12px,1.7vw,34px)}
.norte-header .demo-nav a{font-size:.74rem;font-weight:650;color:#ece0cf}
.norte-header .demo-nav a:hover{color:var(--norte-gold)}
.norte-header-actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.norte-langs{display:flex;gap:3px;background:rgba(255,255,255,.035);border:1px solid var(--norte-border);padding:4px;border-radius:6px;flex-shrink:0}
.norte-langs button{background:transparent;color:#ada08e;border:0;border-radius:3px;padding:7px 9px;font-size:.66rem;font-weight:850;letter-spacing:.04em;cursor:pointer}
.norte-langs button.active{background:#dbb574;color:#15120e}
.norte-cta-header{display:inline-flex;border:1px solid var(--norte-gold);color:#eed7ac;padding:12px 15px;font-size:.66rem;letter-spacing:.1em;font-weight:850;white-space:nowrap}
.norte-cta-header:hover{background:#d6ad6b;color:#11110f}
.norte-demo .demo-menu-toggle{border-color:var(--norte-border);color:var(--norte-gold)}
.norte-overline{margin:0 0 20px;color:#e8c487;font-size:.68rem;font-weight:850;letter-spacing:.24em;line-height:1.6}
.norte-hero{position:relative;min-height:clamp(620px,calc(100svh - 112px),940px);padding:clamp(88px,12vh,150px) max(7%,calc((100vw - 1460px)/2)) 110px;display:flex;align-items:center;background:#19150f url('assets/hero-interior.webp') center 47%/cover no-repeat;isolation:isolate}
.norte-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,6,6,.94) 0%,rgba(5,6,6,.84) 27%,rgba(5,6,6,.58) 48%,rgba(5,6,6,.15) 80%),linear-gradient(0deg,rgba(6,7,7,.55),transparent 36%)}
.norte-hero-content{max-width:770px}
.norte-hero h1{margin:0 0 27px;font:400 clamp(3.85rem,7.35vw,8.65rem)/.99 Georgia,'Times New Roman',serif;letter-spacing:-.048em;text-wrap:balance}
.norte-hero h1 span,.norte-hero h1 em{display:block}
.norte-hero h1 em{font-style:italic;color:var(--norte-gold);font-size:.78em;line-height:1.08}
.norte-hero-copy{max-width:510px;color:#e8e0d2;font-size:clamp(.94rem,1.25vw,1.12rem);line-height:1.8;text-shadow:0 2px 6px rgba(0,0,0,.35)}
.norte-hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:27px}
.norte-btn{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:51px;padding:15px 20px;font-size:.69rem;font-weight:900;letter-spacing:.1em;transition:background .2s,transform .2s}
.norte-btn:hover{transform:translateY(-3px)}
.norte-btn-gold{background:var(--norte-gold);color:#1c150e}
.norte-btn-gold:hover{background:#f1cb89}
.norte-inline-link{font-size:.7rem;font-weight:850;letter-spacing:.12em;color:#ead3b1;border-bottom:1px solid #b69666;padding-bottom:9px;text-decoration:none}
.norte-inline-link:hover{color:white}
.norte-hero-foot{margin:49px 0 0;font-size:.58rem;letter-spacing:.17em;color:#aa9c85}
.norte-scroll-hint{position:absolute;right:6%;bottom:44px;text-align:center;display:grid;gap:10px;place-items:center;color:#f5daa9}
.norte-scroll-hint span{width:38px;height:38px;border:1px solid #bd9a68;border-radius:50%;display:grid;place-items:center;font-size:1.15rem}
.norte-scroll-hint small{font-size:.53rem;letter-spacing:.14em}
.norte-section{padding:100px max(6%,calc((100vw - 1460px)/2)) 94px;background:linear-gradient(180deg,#141310,#0f100f)}
.norte-section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}
.norte-section-top h2,.norte-story h2,.norte-place h2,.norte-last h2{font:400 clamp(2.55rem,4.5vw,5.1rem)/1.05 Georgia,serif;letter-spacing:-.055em;margin:0;color:#f4ead8}
.norte-section-top h2 em,.norte-story h2 em,.norte-place h2 em,.norte-last h2 em{color:var(--norte-gold);font-weight:400;font-style:italic}
.norte-section-intro{width:min(350px,40%);color:var(--norte-muted);font-size:.93rem;line-height:1.8;margin:0}
.norte-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.norte-service-card{position:relative;overflow:hidden;border:1px solid var(--norte-border);background:#1a1714;min-height:400px;isolation:isolate}
.norte-service-card::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,rgba(4,5,5,.97),rgba(4,5,5,.56) 37%,rgba(4,5,5,0) 72%);pointer-events:none}
.norte-service-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .6s ease;object-position:center}
.norte-service-card:first-child img{object-position:50% 29%}
.norte-service-card:hover img{transform:scale(1.035)}
.norte-service-info{position:absolute;bottom:0;z-index:1;left:0;right:0;padding:27px 26px}
.norte-index{display:block;margin-bottom:13px;font-size:.58rem;letter-spacing:.2em;color:#dfbd82;font-weight:800}
.norte-service-info h3{font:400 clamp(1.38rem,1.7vw,1.9rem)/1.2 Georgia,serif;letter-spacing:.01em;margin:0 0 9px;color:#fff2db}
.norte-service-info p{margin:0;color:#d6cbb9;font-size:.85rem;line-height:1.55}
.norte-fictitious-note{color:#938778;text-align:center;font-size:.71rem;margin:24px 0 0}
.norte-story{display:grid;grid-template-columns:1fr 1fr;min-height:550px;border-block:1px solid var(--norte-border);background:#191714}
.norte-story-image{min-height:540px;background:linear-gradient(90deg,transparent 68%,rgba(9,9,8,.25)),url('assets/hero-interior.webp') center center/cover no-repeat}
.norte-story-text{padding:clamp(56px,7vw,110px) clamp(35px,7vw,115px);align-self:center}
.norte-story-text p:not(.norte-overline),.norte-place-card>p:not(.norte-overline){color:#d0c1ac;line-height:1.85;font-size:.99rem;max-width:540px}
.norte-story-text h2{margin:0 0 25px}
.norte-story-text .norte-inline-link{display:inline-block;margin-top:12px}
.norte-place{min-height:620px;position:relative;display:flex;align-items:center;justify-content:flex-start;padding:92px 7%;isolation:isolate}
.norte-place-photo{position:absolute;inset:0;z-index:-2;background:#15120e url('assets/fachada.webp') center 48%/cover no-repeat}
.norte-place::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,6,5,.9),rgba(5,6,5,.75) 32%,rgba(5,6,5,.25) 80%),linear-gradient(0deg,rgba(5,6,5,.42),transparent 45%)}
.norte-place-card{max-width:585px;padding:36px 35px;background:rgba(10,10,10,.63);border-left:3px solid #d4b06f;backdrop-filter:blur(8px);box-shadow:0 30px 75px rgba(0,0,0,.25)}
.norte-place-card h2{margin:0 0 23px}
.norte-place-signature{display:block;margin-top:29px;font-size:.61rem;letter-spacing:.18em;color:#dfbc81}
.norte-last{padding:110px 25px 115px;display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;background:radial-gradient(ellipse at 50% 0%,#30271e,#101110 60%);color:#f4eadb}
.norte-last h2{max-width:850px;margin-bottom:18px}
.norte-last h2 span,.norte-last h2 em{display:block}
.norte-last p:not(.norte-overline){max-width:620px;color:#c9bbaa;line-height:1.8}
.norte-last small{margin-top:25px;color:#aa9880;letter-spacing:.12em;font-size:.57rem}
.norte-footer{background:#0a0c0c;color:#f3e5ca;padding:0 clamp(22px,6%,100px) 23px;border-top:1px solid var(--norte-border)}
.norte-footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr .75fr;gap:clamp(20px,4vw,85px);padding:46px 0 40px}
.norte-footer-brand p{max-width:300px;margin-top:22px;font-size:.86rem;color:#c1b3a0;line-height:1.65}
.norte-location{font-size:.76rem;color:#c5ad89;margin-top:20px}
.norte-footer-col{display:flex;flex-direction:column;align-items:start;gap:11px}
.norte-footer-col h3{font-size:.74rem;letter-spacing:.16em;color:#e4c38c;margin:0 0 11px}
.norte-footer-col a,.norte-footer-col button,.norte-footer-col div>span{font-size:.85rem;color:#e2d8c8;line-height:1.6}
.norte-footer-col a:hover,.norte-footer-col button:hover{color:#f1ca86}
.norte-footer-col small{font-size:.67rem;display:block;color:#9e8f7a}
.norte-footer-col button{border:0;padding:0;background:none;cursor:pointer;text-align:left}
.norte-footer-col button.active{color:#f7d08d;text-decoration:underline;text-underline-offset:3px}
.norte-footer-col div{display:grid;gap:2px;margin-bottom:5px}
.norte-footer-bottom{border-top:1px solid var(--norte-border);padding-top:22px;display:flex;justify-content:space-between;gap:18px;line-height:1.6;color:#918879;font-size:.69rem}
.norte-backtop{position:fixed;right:24px;bottom:22px;z-index:80;width:46px;height:46px;border:1px solid rgba(223,187,122,.45);background:#151512d9;color:#eec989;border-radius:50%;font-size:1.25rem;box-shadow:0 9px 35px #0006;opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .25s,transform .25s}
.norte-backtop.visible{opacity:1;pointer-events:auto;transform:none}
.norte-backtop:hover{background:#dcba7e;color:#13110d}
@media(max-width:1160px){.norte-header .demo-nav{gap:14px}.norte-header-actions{gap:8px}.norte-cta-header{display:none}.norte-hero h1{font-size:clamp(3.9rem,7.6vw,7rem)}}
@media(max-width:800px){.norte-header{min-height:74px;padding:9px 20px;gap:12px}.norte-header .demo-menu-toggle{display:block;order:3}.norte-header .demo-nav{background:#181713!important;border-top:1px solid var(--norte-border);padding:24px;gap:22px;order:4}.norte-header-actions{margin-left:auto}.norte-langs button{padding:7px 6px}.norte-brand strong{font-size:1.55rem}.norte-brand small{font-size:.37rem}.norte-hero{min-height:calc(100svh - 106px);padding:80px 7% 85px;background-position:62% center}.norte-hero::before{background:linear-gradient(90deg,rgba(5,6,6,.9),rgba(5,6,6,.72) 48%,rgba(5,6,6,.4)),linear-gradient(0deg,rgba(5,6,6,.65),transparent 40%)}.norte-hero h1{font-size:clamp(3.25rem,10.3vw,5.6rem);letter-spacing:-.05em}.norte-hero-actions{gap:21px}.norte-hero-foot{margin-top:36px}.norte-scroll-hint{right:5%;bottom:20px}.norte-section{padding:75px 6%}.norte-section-top{display:block}.norte-section-intro{width:auto;max-width:540px;margin-top:20px}.norte-service-grid{grid-template-columns:1fr;gap:15px}.norte-service-card{min-height:370px}.norte-service-card:first-child img{object-position:center 32%}.norte-story{grid-template-columns:1fr}.norte-story-image{min-height:350px}.norte-story-text{padding:55px 7% 72px}.norte-place{min-height:620px;padding:70px 6%}.norte-place-card{padding:30px 22px}.norte-last{padding:90px 6%}.norte-footer-grid{grid-template-columns:1fr 1fr;gap:35px}.norte-footer-bottom{flex-wrap:wrap}}
@media(max-width:440px){.norte-brand strong{font-size:1.35rem}.norte-header{gap:5px;padding:8px 12px}.norte-langs{gap:1px;padding:3px}.norte-langs button{font-size:.62rem;padding:7px 6px}.norte-overline{font-size:.58rem;letter-spacing:.17em}.norte-hero h1{font-size:clamp(2.9rem,10.5vw,4.25rem)}.norte-hero-copy{font-size:.91rem}.norte-hero-actions{gap:17px}.norte-hero-foot{font-size:.5rem}.norte-scroll-hint{display:none}.norte-section-top h2,.norte-story h2,.norte-place h2,.norte-last h2{font-size:clamp(2.35rem,10.8vw,4rem)}.norte-footer-grid{grid-template-columns:1fr;gap:29px}.norte-footer-bottom{display:block}.norte-footer-bottom span{display:block;margin-bottom:8px}.norte-backtop{right:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){.norte-service-card img,.norte-backtop{transition:none}}
