:root{--green:#06494d;--deep:#05383b;--gold:#c7ac77;--cream:#f6f3ed;--ink:#123638;--muted:#667675;--line:#d9ded8;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}button:disabled{opacity:.5;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}h1{font-size:clamp(44px,5.3vw,82px);letter-spacing:-2.5px}h2{font-size:clamp(34px,3.6vw,54px);letter-spacing:-1.6px}h3{font-size:25px}p{margin-bottom:22px}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2.5px;line-height:1.7;margin-bottom:24px}.section{padding:88px max(5.5vw,24px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:32px;padding:15px 25px;background:var(--green);border:1px solid var(--green);color:white;font-size:11px;letter-spacing:1.1px;line-height:1.5;transition:background .2s,color .2s}.btn:hover{background:var(--deep)}.btn.light{background:var(--cream);color:var(--green);border-color:var(--cream)}.btn.light:hover{background:var(--gold);border-color:var(--gold)}.btn.outline{background:transparent;color:var(--green);border-color:#9ab2af}.btn.light.outline{color:var(--cream);border-color:#a9c3bd}.btn.small{padding:9px 17px;gap:12px}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:11px;letter-spacing:1px;border-bottom:1px solid #aebdb5;padding-bottom:9px}.text-link:hover{border-color:var(--green)}.skip{position:absolute;top:-80px;left:10px;z-index:100;background:white;padding:10px}.skip:focus{top:0}.top-strip{background:var(--deep);color:#e1e8e1;display:flex;align-items:center;justify-content:space-between;padding:8px 5.5vw;font-size:10px;letter-spacing:.8px}.top-strip a:hover{color:var(--gold)}.top-caption{font-size:8px;letter-spacing:2px;color:#c5d4cb}.site-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:32px;background:var(--green);color:var(--cream);padding:0 5.5vw;height:108px;border-bottom:1px solid #457275;z-index:5}.brand{display:block;position:relative;overflow:hidden;width:220px;height:106px;flex-shrink:0}.brand img{width:220px;height:164px;max-width:none;position:absolute;left:0;top:-32px;object-fit:contain}.site-header nav{display:flex;gap:34px;align-items:center}.site-header nav a{font-size:11px;letter-spacing:1px;padding:14px 0;white-space:nowrap;position:relative}.site-header nav a:after{content:'';position:absolute;height:1px;bottom:7px;left:0;right:100%;background:var(--gold);transition:right .2s}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{right:0}.header-visit{font-size:10px;letter-spacing:1px;border:1px solid #63908f;padding:9px 18px;white-space:nowrap}.menu-toggle{display:none}.hero{position:relative;min-height:650px;height:min(730px,78vh);background:var(--deep);background-image:linear-gradient(90deg,rgba(0,27,26,.55),rgba(0,24,24,.03) 65%),var(--hero-image);background-size:cover;background-position:center;display:flex;align-items:center;color:var(--cream);padding:68px 7.5vw 110px}.hero-content{max-width:540px;position:relative}.hero .eyebrow{color:#d7bc86;margin-bottom:30px}.hero h1{max-width:540px;margin-bottom:30px}.hero-content>p:not(.eyebrow){max-width:350px;color:#d2dfd8;font-size:13px;line-height:1.9;margin-bottom:34px}.hero-foot{position:absolute;bottom:25px;left:7.5vw;right:7.5vw;display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#cfdbd2}.hero-foot a{display:flex;align-items:center;gap:28px}.hero-foot a span{font-size:22px}.intro{text-align:center;max-width:850px;margin:auto;padding-top:105px;padding-bottom:102px}.intro p:not(.eyebrow){max-width:530px;margin:24px auto 28px;color:var(--muted)}.intro h2{margin-bottom:0}.editorial{display:grid;grid-template-columns:1.12fr 1fr;gap:8vw;align-items:center;padding-top:10px;padding-bottom:105px}.editorial-visual{height:510px;position:relative;background:var(--green);overflow:hidden}.editorial-visual img{width:100%;height:100%;object-fit:cover;object-position:83% center}.image-caption{position:absolute;bottom:26px;left:30px;color:white;font-size:9px;letter-spacing:2.5px}.editorial-copy{max-width:410px}.editorial-copy h2{font-size:clamp(32px,3.2vw,47px);margin-bottom:28px}.editorial-copy p:not(.eyebrow){color:var(--muted);font-size:13px}.editorial-copy .eyebrow{font-size:9px;margin-bottom:18px}.fine-line{border-top:1px solid var(--line);margin:38px 0 27px}.visit-banner{background:var(--green);color:var(--cream);text-align:center;padding-top:80px;padding-bottom:86px}.visit-banner .eyebrow{color:var(--gold)}.visit-banner p:not(.eyebrow){color:#c8d9d1;font-size:12px}.visit-banner h2{margin-bottom:26px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:40px}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:12px}.page-heading{text-align:center;padding-top:74px;padding-bottom:50px}.page-heading h1{font-size:clamp(43px,4.4vw,66px);letter-spacing:-2px;margin:0 auto 24px;max-width:900px}.page-heading>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-bottom:0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center;padding-top:15px}.about-image{background:var(--green);min-height:420px;display:flex;align-items:center;justify-content:center;position:relative}.about-image img{width:85%;max-width:500px}.about-image>span{position:absolute;bottom:26px;font-size:8px;letter-spacing:2px;color:#b8cdc4}.about-copy p{font-size:15px;color:var(--muted);line-height:1.95}.service-lines{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;padding-top:0}.service-lines>div{border-top:1px solid var(--line);padding-top:20px}.service-lines span{font-size:10px;color:#8c9e94;letter-spacing:2px;display:block;margin-bottom:28px}.service-lines p{color:var(--muted);font-size:12px}.offers-section{padding-top:12px;min-height:450px}.offer-tools{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:35px;color:var(--muted);font-size:11px}.offer-tools>label{display:flex;align-items:center;gap:12px;margin-left:auto}.offer-tools select{border:0;background:none;color:var(--ink);padding:8px}.search-wrap{display:flex;max-width:320px;width:100%;border-bottom:1px solid #adbfb5}.search-wrap input{background:transparent;border:0;min-width:0;width:100%;padding:9px 0;font-size:12px}.search-wrap button{background:transparent;border:0;font-size:20px;color:var(--green)}.offer-grid{display:grid;grid-template-columns:repeat(var(--columns,5),minmax(0,1fr));gap:36px 18px}.offer-card{display:block;padding:0;border:0;text-align:left;color:var(--ink);background:none;min-width:0;width:100%}.offer-photo{position:relative;display:block;aspect-ratio:1/1.18;background:#eeede7;overflow:hidden}.offer-photo>img{height:100%;width:100%;object-fit:contain;transition:transform .5s}.offer-card:hover .offer-photo>img{transform:scale(1.05)}.view-offer{position:absolute;bottom:0;left:0;right:0;text-align:center;background:var(--green);color:white;padding:9px;font-size:10px;letter-spacing:1px;transform:translateY(110%);transition:transform .2s}.offer-card:hover .view-offer,.offer-card:focus-visible .view-offer{transform:translateY(0)}.card-category{display:block;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);font-size:8px;margin-top:19px}.card-title{display:block;font:20px/1.25 var(--serif);margin:8px 0 11px}.card-price{display:block;font-size:10px}.card-price del{color:#86928a;display:block;font-size:10px;margin-bottom:3px}.pagination{display:flex;gap:25px;align-items:center;justify-content:center;padding:45px 0 5px;font-size:11px}.pagination a{padding:9px 14px;border:1px solid var(--line)}.offers-empty{text-align:center;padding:58px 20px 70px}.offers-empty h2{font-size:36px}.offers-empty p{color:var(--muted);max-width:450px;margin:0 auto 28px;font-size:13px}.empty-gem{font-size:72px;line-height:1;color:var(--gold);display:block;margin-bottom:25px}.store-frame-wrap{background:white;width:100%}.store-frame{display:block;width:100%;border:0;min-height:calc(100dvh - 140px)}.store-page .site-header{position:relative}.site-footer{background:#eceee7;padding:54px 5.5vw 0}.footer-main{display:grid;grid-template-columns:1.25fr 1fr .7fr;gap:8vw;padding-bottom:45px}.footer-main h3{font:9px/1.6 Arial,sans-serif;letter-spacing:2px;margin:12px 0 20px}.footer-wordmark{font:36px/1.2 var(--serif);letter-spacing:-1px;margin-bottom:6px}.footer-main .eyebrow{font-size:8px;margin-bottom:20px}.footer-main p:not(.footer-wordmark):not(.eyebrow),.footer-main a{font-size:11px;color:var(--muted);margin-bottom:8px;display:block;max-width:300px;line-height:1.9}.footer-bottom{border-top:1px solid #cfd9cd;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-size:8px;letter-spacing:.8px;color:#7c8e82}.whatsapp-float{position:fixed;bottom:24px;right:24px;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--green);border:1px solid #b5c7ba;color:#fff;box-shadow:0 3px 14px #002a3b20;z-index:15}.whatsapp-float:hover{background:var(--deep)}.whatsapp-float svg{width:23px;height:23px}.offer-modal{padding:0;border:0;max-width:1050px;width:calc(100% - 48px);max-height:90dvh;background:var(--cream);color:var(--ink);overflow:auto}.offer-modal::backdrop{background:#001d20b0;backdrop-filter:blur(3px)}.modal-close{position:absolute;right:14px;top:10px;z-index:2;width:38px;height:38px;border:0;background:#f6f3edee;color:var(--ink);font-size:30px;line-height:1}.modal-layout{display:grid;grid-template-columns:1.2fr 1fr}.modal-gallery{background:#eceee7;padding:30px}.modal-gallery>img{width:100%;height:400px;object-fit:contain}.gallery-nav{display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:11px}.gallery-nav button{border:1px solid #c7d2c5;color:var(--ink);background:none;width:36px;height:32px}.modal-thumbs{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.modal-thumbs button{padding:2px;background:none;border:1px solid transparent}.modal-thumbs button[aria-pressed=true]{border-color:var(--green)}.modal-thumbs img{width:54px;height:54px;object-fit:cover}.modal-copy{padding:76px 40px 45px;align-self:center}.modal-copy h2{font-size:38px;line-height:1.15;overflow-wrap:anywhere}.modal-copy>p:not(.eyebrow):not(.help){color:var(--muted);white-space:pre-line;font-size:13px}.modal-copy .eyebrow{font-size:8px;margin-bottom:18px}.modal-prices{margin:26px 0 18px}.modal-prices del{color:#809083;font-size:13px;display:block}.modal-prices strong{font-weight:400;font-size:20px}.help{font-size:11px;color:var(--muted);line-height:1.7}.holding{min-height:100vh;background:var(--green);color:var(--cream);display:grid;place-items:center;text-align:center;padding:30px}.holding .eyebrow{color:var(--gold)}.holding h1{font-size:clamp(46px,7vw,90px)}.holding .text-link{margin-top:30px}.notice{padding:13px 17px;border:1px solid #b7c7b6;background:#edf3e9;margin:0 0 22px;font-size:13px}.notice.error{border-color:#d7afa7;background:#fff1eb;color:#833c2f}.notice.success{border-color:#afc7ae}
@media(min-width:1600px){.hero{padding-left:10vw}.hero-foot{left:10vw;right:10vw}}@media(max-width:1100px){.site-header{gap:20px;padding:0 4vw}.site-header nav{gap:22px}.header-visit{display:none}.section{padding-left:5vw;padding-right:5vw}.hero{padding-left:6vw;background-position:58% center}.hero-content{max-width:470px}.hero h1{font-size:65px}.offer-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.editorial{gap:6vw}.editorial-visual{height:480px}}@media(max-width:760px){.section{padding:58px 22px}.top-strip{padding:8px 22px}.top-caption{display:none}.site-header{height:96px;padding:0 22px}.brand{width:190px;height:94px}.brand img{width:190px;height:142px;top:-28px}.menu-toggle{display:flex;width:36px;height:36px;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:0;background:none}.menu-toggle span{width:23px;height:1px;background:var(--cream)}.site-header nav{position:absolute;top:96px;left:0;right:0;background:var(--green);display:none;padding:20px 26px 28px;border-bottom:1px solid #76978d}.site-header nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.hero{height:720px;min-height:600px;padding:65px 26px 100px;align-items:flex-end;background-image:linear-gradient(0deg,#002a29ee,rgba(0,28,27,.1) 90%),var(--hero-image);background-position:68% top}.hero-content{max-width:480px}.hero h1{font-size:57px;max-width:400px;margin-bottom:22px;letter-spacing:-2px}.hero .eyebrow{font-size:8px;margin-bottom:20px}.hero-content>p:not(.eyebrow){max-width:320px;font-size:12px;margin-bottom:26px}.hero-foot{left:26px;right:26px;bottom:22px;font-size:7px;letter-spacing:1px}.intro{padding-top:64px;padding-bottom:64px}.intro h2{font-size:40px}.editorial{display:flex;flex-direction:column;gap:32px;padding-top:0}.editorial-visual{height:400px;width:100%}.editorial-copy{max-width:none;width:100%}.editorial-copy h2{font-size:40px}.editorial-copy p:not(.eyebrow){max-width:500px}.section-heading{align-items:flex-end}.section-heading h2{font-size:35px}.section-heading .text-link{font-size:9px;white-space:nowrap}.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.card-title{font-size:21px}.card-category{font-size:7px;letter-spacing:1px}.view-offer{display:none}.offer-tools{gap:12px;flex-wrap:wrap}.search-wrap{max-width:none;flex-basis:100%}.offer-tools>label{margin-left:0}.offer-tools>span{margin-left:auto}.about-layout{display:flex;flex-direction:column;gap:32px;padding-top:0}.about-image{width:100%;min-height:320px}.about-copy p{font-size:14px}.service-lines{grid-template-columns:1fr;gap:30px;padding-top:0}.service-lines span{margin-bottom:14px}.service-lines h3{margin-bottom:14px}.footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-main>div:first-child{grid-column:1/-1}.site-footer{padding:44px 24px 0}.footer-bottom{flex-wrap:wrap;padding-bottom:25px;font-size:7px}.footer-bottom>span:nth-child(2){display:none}.whatsapp-float{right:17px;bottom:17px;width:48px;height:48px}.page-heading{padding-top:52px;padding-bottom:35px}.page-heading h1{font-size:44px}.offer-modal{width:calc(100% - 20px);max-height:94dvh}.modal-layout{grid-template-columns:1fr}.modal-gallery{padding:30px 20px 18px}.modal-gallery>img{height:280px}.modal-copy{padding:30px 24px}.modal-copy h2{font-size:34px}.gallery-nav{padding:8px 0}.modal-thumbs img{height:45px;width:45px}.store-frame{min-height:calc(100dvh - 126px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Gold Express · Compact public layout · R1 · 05-11-2026 */
.site-header{height:88px;padding-inline:4vw;gap:24px}
.brand{width:185px;height:86px}
.brand img{width:185px;height:138px;top:-25px}
.top-strip{padding:6px 4vw}
.hero{min-height:460px;height:clamp(460px,58vh,560px);padding:40px 6vw 72px}
.hero-content{max-width:660px}
.hero h1{font-size:clamp(46px,4vw,66px);max-width:660px;margin-bottom:18px;letter-spacing:-1.8px}
.hero .eyebrow{margin-bottom:16px}
.hero-content>p:not(.eyebrow){font-size:14px;line-height:1.7;max-width:420px;margin-bottom:22px}
.hero-foot{left:6vw;right:6vw;bottom:16px}
.intro.section{max-width:none;margin:0;padding:32px 4vw;display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"eyebrow copy" "heading copy" "heading link";gap:10px 4vw;text-align:left;align-items:center}
.intro>.eyebrow{grid-area:eyebrow;margin:0}
.intro h2{grid-area:heading;font-size:clamp(32px,3vw,44px);margin:0}
.intro p:not(.eyebrow){grid-area:copy;max-width:640px;margin:0;font-size:14px}
.intro>.text-link{grid-area:link;justify-self:start}
.editorial.section{grid-template-columns:1.05fr 1fr;gap:4vw;padding:8px 4vw 36px}
.editorial-visual{height:360px}
.editorial-copy{max-width:640px}
.editorial-copy h2{font-size:clamp(32px,2.7vw,42px);margin-bottom:16px}
.editorial-copy p:not(.eyebrow){font-size:14px;margin-bottom:14px}
.editorial-copy .eyebrow{margin-bottom:12px}
.editorial-copy .fine-line{margin:20px 0 16px}
.featured.section{padding:32px 4vw 40px}
.visit-banner.section{padding:26px 4vw;display:grid;grid-template-columns:1fr auto;grid-template-areas:"eyebrow action" "heading action" "address action";gap:8px 32px;text-align:left;align-items:center}
.visit-banner>.eyebrow{grid-area:eyebrow;margin:0}
.visit-banner h2{grid-area:heading;font-size:clamp(30px,2.5vw,38px);margin:0}
.visit-banner p:not(.eyebrow){grid-area:address;margin:0;line-height:1.6}
.visit-banner>.btn{grid-area:action;justify-self:end}
.site-footer{padding:28px 4vw 0}
.footer-main{gap:4vw;padding-bottom:22px}
.footer-main h3{margin:0 0 10px}
.footer-main .eyebrow{margin-bottom:12px}
.footer-wordmark{font-size:32px}
.footer-main p:not(.footer-wordmark):not(.eyebrow),.footer-main a{font-size:12px;line-height:1.65;max-width:420px}
.footer-bottom{padding:12px 0}
@media(min-width:1600px){.hero{padding-left:6vw}.hero-foot{left:6vw;right:6vw}}
@media(max-width:1100px){.hero-content{max-width:560px}.hero h1{font-size:56px;max-width:560px}.editorial-visual{height:370px}}
@media(max-width:760px){
 .site-header{height:80px;padding:0 20px}
 .brand{width:160px;height:78px}.brand img{width:160px;height:119px;top:-22px}
 .site-header nav{top:80px}
 .top-strip{padding:6px 20px}
 .hero{height:auto;min-height:490px;padding:38px 22px 64px;align-items:center}
 .hero-content{max-width:480px}.hero h1{font-size:46px;max-width:420px;margin-bottom:18px;letter-spacing:-1.5px}
 .hero .eyebrow{margin-bottom:14px}.hero-content>p:not(.eyebrow){font-size:14px;max-width:340px;margin-bottom:20px}
 .hero-foot{left:22px;right:22px;bottom:15px}
 .intro.section{display:block;padding:28px 20px;text-align:left}
 .intro>.eyebrow{margin-bottom:12px}.intro h2{font-size:34px}
 .intro p:not(.eyebrow){margin:14px 0 18px}
 .editorial.section{display:flex;gap:20px;padding:0 20px 28px}
 .editorial-visual{height:280px}.editorial-copy{max-width:none}
 .editorial-copy h2{font-size:34px}.editorial-copy .fine-line{margin:18px 0 14px}
 .featured.section{padding:26px 20px 30px}
 .visit-banner.section{display:block;padding:24px 20px}
 .visit-banner>.eyebrow{margin-bottom:10px}.visit-banner h2{font-size:32px;margin-bottom:12px}
 .visit-banner p:not(.eyebrow){margin-bottom:16px}
 .site-footer{padding:24px 20px 0}.footer-main{gap:20px;padding-bottom:18px}.footer-bottom{padding:12px 0 18px}
 .store-frame{min-height:calc(100dvh - 110px)}
}

/* Original brand artwork + photographic carousel · R2 · 05-11-2026 */
:root{--green:#0f4a4e;--deep:#0b383b;--gold:#b6956a}
.brand{width:260px;height:72px;display:flex;align-items:center;overflow:visible}
.brand img{position:static;left:auto;top:auto;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:left center}
.page-heading{padding:32px 4vw 24px}
.page-heading h1{font-size:clamp(36px,3.6vw,54px);margin-bottom:16px}
.page-heading .eyebrow{margin-bottom:14px}
.about-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:4vw;padding:0 4vw 32px}
.about-image{min-width:0;min-height:280px;padding:28px}
.about-image img{width:100%;max-width:620px;max-height:210px;object-fit:contain}
.about-image>span{bottom:18px;font-size:9px;letter-spacing:1.3px}
.about-copy{min-width:0;overflow-wrap:anywhere}
.about-copy p{font-size:15px;line-height:1.8;margin-bottom:18px}
.service-lines{gap:32px;padding:0 4vw 36px}
.service-lines span{margin-bottom:16px}
.hero.hero-carousel{isolation:isolate;background-image:none;overflow:hidden;touch-action:pan-y}
.hero-slides{position:absolute;inset:0;z-index:-2;background:var(--deep)}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;pointer-events:none;overflow:hidden}
.hero-slide.is-active{opacity:1;z-index:1}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:72% center;transform:scale(1.035)}
.hero-slide.is-active img{animation:gold-drift 9s ease-out both}
@keyframes gold-drift{from{transform:scale(1.035) translate3d(0,0,0)}to{transform:scale(1.095) translate3d(-.6%,0,0)}}
.hero-carousel:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(0,24,25,.58),rgba(0,24,25,.09) 64%,rgba(0,24,25,.03))}
.hero-carousel.is-paused .hero-slide img{animation-play-state:paused}
.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:48px;display:grid;place-items:center;border:1px solid #e4dfcd66;background:#052b2f55;color:#fff9ec;font:34px/1 Georgia,serif;z-index:3;opacity:.8;transition:background .2s,opacity .2s}
.carousel-arrow:hover{background:#0b383be6;opacity:1}
.carousel-prev{left:14px}.carousel-next{right:14px}
.hero-carousel .hero-foot{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;z-index:3}
.hero-carousel .hero-foot>a{justify-self:end}
.carousel-controls{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;letter-spacing:0}
.carousel-controls[hidden],.carousel-arrow[hidden]{display:none}
.carousel-dots{display:flex;gap:0;align-items:center}
.carousel-dots button{width:24px;height:30px;background:transparent;border:0;padding:7px;display:grid;place-items:center}
.carousel-dots button span{display:block;width:7px;height:7px;border:1px solid #f6f3edd0;border-radius:50%;transition:background .2s}
.carousel-dots button[aria-current] span{background:var(--gold);border-color:var(--gold)}
.carousel-play{width:30px;height:30px;display:grid;place-items:center;border:1px solid #e4dfcd66;background:#052b2f66;color:var(--cream);font-size:12px;padding:0}
.carousel-count{min-width:46px;font-size:10px;white-space:nowrap;color:var(--cream)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1100px){.brand{width:235px}.hero-carousel .hero-foot{grid-template-columns:1fr auto}.hero-carousel .hero-location{display:none}}
@media(max-width:760px){
 .brand{width:min(62vw,245px);height:68px}.brand img{width:100%;height:100%;top:auto}
 .page-heading{padding:26px 20px 22px}.page-heading h1{font-size:36px;letter-spacing:-1.2px}
 .about-layout{display:flex;padding:0 20px 26px;gap:22px}.about-image{min-height:220px;padding:22px}.about-image img{max-height:170px}
 .about-copy{width:100%}.service-lines{padding:0 20px 28px;gap:24px}
 .hero.hero-carousel{padding-left:36px;padding-right:36px;padding-bottom:100px;min-height:510px}
 .hero-carousel:before{background:linear-gradient(0deg,#002a29ee,rgba(0,26,27,.4) 70%,rgba(0,26,27,.15))}
 .hero-slide img{object-position:70% center}
 .carousel-arrow{width:26px;height:42px;font-size:28px}.carousel-prev{left:4px}.carousel-next{right:4px}
 .hero-carousel .hero-foot{left:20px;right:20px;bottom:14px;grid-template-columns:1fr;gap:8px}
 .hero-carousel .hero-foot>a{justify-self:center;font-size:7px;gap:14px}.hero-carousel .hero-foot>a span{font-size:16px}
 .carousel-dots button{width:20px;height:28px;padding:6px}.carousel-controls{gap:6px}.carousel-count{font-size:9px;min-width:36px}
}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.hero-slide img{animation:none!important;transform:none}}


/* Twenty-scene carousel with more visible motion · R3 · 05-11-2026 */
.hero-slide.is-active img{animation:gold-drift 8s ease-in-out both;transform-origin:70% 50%}
.hero-slide:nth-child(even).is-active img{animation-name:gold-drift-return}
@keyframes gold-drift{from{transform:scale(1.025) translate3d(.3%,0,0)}to{transform:scale(1.17) translate3d(-1.2%,-.3%,0)}}
@keyframes gold-drift-return{from{transform:scale(1.17) translate3d(-1.2%,-.3%,0)}to{transform:scale(1.025) translate3d(.3%,0,0)}}
.carousel-dots{position:relative;max-width:min(480px,48vw);min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.carousel-dots::-webkit-scrollbar{display:none}
.carousel-dots button{flex:0 0 24px}
@media(max-width:760px){.carousel-dots{max-width:calc(100vw - 120px)}.carousel-dots button{flex-basis:20px}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-active img{animation:none!important;transform:none!important}}

/* Gemología · R1 · 05-11-2026 */
.gem-heading{padding-bottom:28px}
.gem-heading h1{max-width:900px}
.gem-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4vw;align-items:center;padding:0 4vw 34px}
.gem-visual{min-width:0;position:relative;overflow:hidden;background:var(--green)}
.gem-visual img{width:100%;height:360px;object-fit:cover;object-position:center}
.gem-visual:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#062b2dbb);pointer-events:none}
.gem-visual>span{position:absolute;bottom:20px;left:24px;color:var(--cream);font-size:9px;letter-spacing:2px;z-index:1}
.gem-profile-copy{min-width:0;max-width:650px;overflow-wrap:anywhere}
.gem-profile-copy .eyebrow{margin-bottom:12px}
.gem-profile-copy h2{font-size:clamp(36px,3.5vw,52px);margin-bottom:12px}
.gem-profile-copy p:not(.eyebrow){font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:16px}
.gem-profile-copy .gem-role{color:var(--ink)!important;padding-bottom:14px;border-bottom:1px solid var(--line)}
.gem-role strong{font-weight:500;color:var(--green)}
.gem-profile-copy .btn{margin-top:2px}
.gem-services{padding:16px 4vw 36px}
.gem-services .section-heading{margin-bottom:24px}
.gem-services h2{font-size:clamp(30px,2.8vw,42px)}
.gem-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.gem-service-grid article{border-top:1px solid #bdc9be;padding-top:16px;min-width:0}
.gem-service-grid article>span{display:block;font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:12px}
.gem-service-grid h3{font-size:25px;margin-bottom:12px;line-height:1.2}
.gem-service-grid p{font-size:14px;color:var(--muted);line-height:1.75;margin-bottom:0;overflow-wrap:anywhere}
.gem-contact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;background:var(--green);color:var(--cream);padding:30px 4vw}
.gem-contact .eyebrow{color:var(--gold);margin-bottom:12px}
.gem-contact h2{font-size:clamp(30px,2.8vw,40px);margin-bottom:14px}
.gem-contact p:not(.eyebrow){max-width:680px;margin:0;color:#d6e2db;font-size:14px}
.gem-contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.gem-contact-actions .text-link{color:var(--cream)}
@media(min-width:761px) and (max-width:1000px){
 .site-header{height:80px;padding:0 24px}.brand{height:68px;width:250px}
 .menu-toggle{display:flex;width:36px;height:36px;flex-shrink:0;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:0;background:none}
 .menu-toggle span{width:23px;height:1px;background:var(--cream)}
 .site-header nav{position:absolute;top:80px;left:0;right:0;background:var(--green);display:none;padding:20px 26px;border-bottom:1px solid #76978d}
 .site-header nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.header-visit{display:none}
}
@media(max-width:1000px){.gem-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gem-visual img{height:400px}}
@media(max-width:760px){
 .gem-profile{grid-template-columns:minmax(0,1fr);padding:0 20px 28px;gap:24px}
 .gem-visual img{height:270px}.gem-visual>span{left:18px;font-size:8px;letter-spacing:1.5px}
 .gem-profile-copy h2{font-size:38px}.gem-services{padding:0 20px 28px}
 .gem-services h2{font-size:34px}.gem-service-grid{gap:24px 18px}.gem-service-grid h3{font-size:24px}
 .gem-contact{grid-template-columns:minmax(0,1fr);padding:26px 20px;gap:22px}.gem-contact h2{font-size:32px}
}
@media(max-width:420px){.gem-service-grid{grid-template-columns:minmax(0,1fr)}}

/* Sello personal y certificado · R1 · 05-11-2026 */
.gem-person-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}
.gem-person-heading h2{margin:0;min-width:0}
.gem-seal{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 132px;padding:7px 8px;background:#fff;border:1px solid #d6d7cb;color:var(--muted);transition:border-color .2s,background .2s}
.gem-seal:hover{border-color:var(--gold);background:#fffefa}
.gem-seal img{display:block;width:116px;height:66px;object-fit:contain}
.gem-seal>span{font-size:9px;letter-spacing:1px;line-height:1.5;margin-top:3px}
.gem-cert-link{background:none;border:0;border-bottom:1px solid #aebdb5;color:var(--green);padding:0 0 8px;margin:0 0 18px;gap:16px;text-align:left}
.gem-cert-link small{font-size:9px;letter-spacing:0;color:var(--muted)}
.gem-document-modal{width:70vw;height:70vh;max-width:none;max-height:none;padding:0;border:1px solid #dadacc;background:var(--cream);color:var(--ink);overflow:hidden;margin:auto;box-shadow:0 18px 90px #001b2a66}
.gem-document-modal[open]{display:flex;flex-direction:column}
.gem-document-modal::backdrop{background:#001b20bb;backdrop-filter:blur(4px)}
.gem-document-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;border-bottom:1px solid var(--line);flex-shrink:0}
.gem-document-header h2{font-size:21px;letter-spacing:-.3px;margin:0;line-height:1.2}
.gem-document-close{flex:0 0 32px;width:32px;height:32px;line-height:1;border:1px solid #bdc9bd;color:var(--ink);background:transparent;font-size:26px}
.gem-document-frame{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;padding:16px;background:#fff}
.gem-document-frame>img{display:block;width:100%;height:100%;object-fit:contain;min-width:0;min-height:0}
.gem-document-frame>img[hidden],.gem-document-message[hidden]{display:none}
.gem-document-message{font-size:14px;line-height:1.7;text-align:center;max-width:460px;margin:0;color:var(--muted)}
@media(max-width:760px){.gem-person-heading{gap:12px}.gem-person-heading h2{font-size:34px}.gem-seal{flex-basis:110px;padding:5px}.gem-seal img{width:98px;height:58px}.gem-document-header{padding:10px;gap:8px}.gem-document-header h2{font-size:17px}.gem-document-frame{padding:8px}}
@media(max-width:380px){.gem-person-heading h2{font-size:30px}.gem-seal{flex-basis:96px}.gem-seal img{width:84px;height:50px}.gem-seal>span{font-size:8px}.gem-cert-link{font-size:10px;gap:10px}}

/* Cinta sutil bajo portada: texto de marcas, sin imágenes pesadas. */
.brand-ribbon{position:relative;height:58px;padding:0 48px 0 0;background:var(--cream,#f5f2eb);border-bottom:1px solid rgba(15,74,78,.10);overflow:hidden}
.brand-ribbon-window{height:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}
.brand-ribbon-track{display:flex;width:max-content;height:100%;transform:translateX(0)}
.brand-ribbon-group{display:flex;align-items:center;flex:0 0 auto;gap:66px;list-style:none;margin:0;padding:0 33px}
.brand-ribbon-group li{margin:0;padding:0;white-space:nowrap;color:#6c7f78;font-family:Georgia,'Times New Roman',serif;font-size:15px;font-weight:400;letter-spacing:1.6px;line-height:1}
.brand-ribbon-group li:nth-child(2),.brand-ribbon-group li:nth-child(10){font-style:italic;letter-spacing:.6px;font-size:18px}
.brand-ribbon.is-ready .brand-ribbon-track{animation:gold-brand-drift 255s linear infinite}
.brand-ribbon:hover .brand-ribbon-track,.brand-ribbon:focus-within .brand-ribbon-track,.brand-ribbon.is-paused .brand-ribbon-track{animation-play-state:paused}
.brand-ribbon-pause{position:absolute;right:12px;top:15px;width:28px;height:28px;padding:0;border:1px solid rgba(15,74,78,.18);background:transparent;color:#6c7f78;font-size:12px;cursor:pointer}
.brand-ribbon-pause[hidden]{display:none}
.brand-ribbon-pause:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@keyframes gold-brand-drift{to{transform:translateX(-50%)}}
@media(max-width:600px){.brand-ribbon{height:46px;padding-right:40px}.brand-ribbon-group{gap:38px;padding:0 19px}.brand-ribbon-group li{font-size:12px;letter-spacing:1.2px}.brand-ribbon-group li:nth-child(2),.brand-ribbon-group li:nth-child(10){font-size:15px}.brand-ribbon-pause{top:10px;right:8px;width:26px;height:26px}}
@media(prefers-reduced-motion:reduce){.brand-ribbon.is-ready .brand-ribbon-track{animation:none}.brand-ribbon-pause{display:none}.brand-ribbon-window{overflow-x:auto;mask-image:none}.brand-ribbon-group[aria-hidden=true]{display:none}.brand-ribbon{padding-right:0}}

/* Mantener la cabecera pública visible durante el desplazamiento. */
.site-masthead {
    position: sticky;
    top: 0;
    z-index: 20;
}
#contenido, #esencia {
    scroll-margin-top: 132px;
}
.site-masthead .site-header nav.open {
    max-height: calc(100dvh - 116px);
    overflow-y: auto;
}

/* Crédito Legrotec con los colores de su marca. */
.footer-bottom .footer-legrotec {
    color: #006397;
    display: inline;
    white-space: nowrap;
}
.footer-bottom .footer-legrotec span { color: #a84600; }
.footer-bottom .footer-legrotec:hover,
.footer-bottom .footer-legrotec:focus-visible { text-decoration: underline; }

/* Movimiento discreto para el acceso a WhatsApp. */
.whatsapp-float {
    box-shadow: 0 5px 16px #002a3b38;
}
@media (prefers-reduced-motion: no-preference) {
    .whatsapp-float {
        animation: gold-whatsapp-float 4s ease-in-out infinite;
    }
    .whatsapp-float:hover,
    .whatsapp-float:focus {
        animation: none;
    }
}
@keyframes gold-whatsapp-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}
