@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#182b31;--red:#af1b20;--gold:#e3b15b;--cream:#f8f7f4;--muted:#6e7a7d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:var(--cream)}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input,textarea{font:inherit}button{cursor:pointer}.container{width:min(1180px,calc(100% - 44px));margin:auto}.topline{height:5px;background:var(--red)}.header{position:sticky;top:0;z-index:100;background:#fffffff0;backdrop-filter:blur(16px);border-bottom:1px solid #e6e6e2}.nav{display:flex;align-items:center;justify-content:space-between;min-height:85px;gap:22px}.logo{width:150px;height:auto}.links{display:flex;align-items:center;gap:32px}.links a{font-size:13px;font-weight:700;letter-spacing:.045em;text-transform:uppercase;position:relative}.links a:after{content:'';position:absolute;bottom:-8px;left:0;width:0;height:2px;background:var(--red);transition:width .3s}.links a:hover:after,.links a.active:after{width:100%}.links a.active{color:var(--red)}.menu-toggle{display:none;background:transparent;border:0;font-size:27px}.hero{position:relative;min-height:min(750px,84vh);background:#26383a url('assets/home-banner.jpg') center/cover;display:flex;align-items:center;color:white;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,24,27,.82),rgba(11,24,27,.30) 70%)}.hero .container{position:relative;z-index:2}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 20px}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(39px,6vw,78px);max-width:810px;line-height:1.08;letter-spacing:-.055em;margin:0 0 25px}.hero p{max-width:530px;font-size:17px;line-height:1.8;color:#f1f1ed}.btn{display:inline-flex;gap:15px;align-items:center;justify-content:center;padding:15px 24px;background:var(--red);color:white;border:1px solid var(--red);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;transition:transform .25s,background .25s}.btn:hover{background:#871519;transform:translateY(-3px)}.btn.outline{background:transparent;border-color:#ffffff70}.btn.outline:hover{background:white;color:var(--ink)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.section{padding:100px 0}.section.alt{background:white}.heading{font:800 clamp(30px,4vw,48px)/1.2 Manrope,sans-serif;letter-spacing:-.045em;margin:0 0 22px}.lede{color:var(--muted);line-height:1.9;max-width:700px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split img{width:100%;height:430px;object-fit:cover}.image-frame{position:relative}.image-frame:before{content:'';position:absolute;inset:18px -18px -18px 18px;border:1px solid #b99b7c;z-index:-1}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.product{background:white;border:1px solid #ecebe7;overflow:hidden;transition:transform .4s,box-shadow .4s}.product:hover{transform:translateY(-7px);box-shadow:0 18px 55px #1a232316}.product-image{height:240px;background:#f0f0ed;display:flex;align-items:center;justify-content:center;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.product:hover .product-image img{transform:scale(1.06)}.product-body{padding:24px}.product h3{margin:0 0 12px;font:800 19px Manrope}.more{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--red);text-transform:uppercase}.page-hero{background:#172e36 url('assets/innerbanner.jpg') center/cover;position:relative;color:white;padding:95px 0}.page-hero:before{content:'';position:absolute;inset:0;background:#13242cc9}.page-hero .container{position:relative}.page-hero h1{font:800 clamp(38px,5vw,60px) Manrope;margin:0;letter-spacing:-.05em}.crumb{font-size:12px;color:#e7ded4;margin-top:14px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.stat{padding:28px;border-left:2px solid var(--red);background:#f5f4f1}.stat strong{font:800 23px Manrope;display:block}.stat span{font-size:13px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery button{padding:0;border:0;background:#ddd;overflow:hidden;aspect-ratio:4/3}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery button:hover img{transform:scale(1.06)}.lightbox{position:fixed;inset:0;background:#080c0def;display:none;align-items:center;justify-content:center;z-index:200;padding:35px}.lightbox.open{display:flex}.lightbox img{max-height:90vh;max-width:95vw;object-fit:contain}.lightbox button{position:absolute;top:15px;right:20px;border:0;background:transparent;color:white;font-size:40px}.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detail-gallery img{width:100%;height:260px;object-fit:cover;background:#eee}.detail-copy{font-size:16px;line-height:1.9;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:65px}.contact-card{padding:30px;background:white;border:1px solid #eee;margin-top:18px}.contact-card h3{margin:0 0 12px}.contact-card p{line-height:1.8;color:var(--muted)}.form{display:grid;gap:15px}.form input,.form textarea{padding:17px;border:1px solid #deded8;background:white;width:100%;outline-color:var(--red)}.form textarea{min-height:160px;resize:vertical}.footer{background:#13262d;color:#c8d0d1;padding:70px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.footer h4{color:white;font-size:13px;letter-spacing:.12em;text-transform:uppercase}.footer a{display:block;margin:12px 0;font-size:14px}.footer a:hover{color:var(--gold)}.footer .logo{width:145px}.footer p{font-size:14px;line-height:1.9}.copyright{border-top:1px solid #ffffff20;padding-top:20px;margin-top:55px;font-size:12px}.reveal{opacity:0;transform:translateY(32px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:800px){.nav{min-height:72px}.logo{width:126px}.menu-toggle{display:block}.links{position:absolute;top:100%;left:0;right:0;background:white;display:none;flex-direction:column;align-items:stretch;gap:0;padding:15px 25px 22px;box-shadow:0 15px 35px #0001}.links.open{display:flex}.links a{padding:12px 0}.hero{min-height:650px}.section{padding:70px 0}.split,.contact-grid{grid-template-columns:1fr;gap:38px}.grid,.gallery{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.stats{grid-template-columns:1fr 1fr}.split img{height:350px}}@media(max-width:520px){.container{width:calc(100% - 34px)}.hero h1{font-size:43px}.hero p{font-size:15px}.grid{grid-template-columns:1fr 1fr;gap:12px}.product-image{height:150px}.product-body{padding:14px}.product h3{font-size:14px}.gallery{gap:9px}.detail-gallery{gap:9px}.detail-gallery img{height:170px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.stats{grid-template-columns:1fr}.page-hero{padding:70px 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
/* V1.1 — original Renoveneers hero banner */
.hero{background-image:url('home-banner.jpg');background-position:center center;min-height:min(780px,85vh)}
.hero:before{background:linear-gradient(90deg,rgba(7,18,20,.68) 0%,rgba(7,18,20,.20) 55%,rgba(7,18,20,.03) 100%)}
.hero h1{font-size:clamp(35px,5.1vw,72px);line-height:1.12;letter-spacing:-.035em;text-transform:uppercase;max-width:850px;text-shadow:0 3px 22px rgba(0,0,0,.22)}
.hero .container{animation:heroEntrance 1.1s cubic-bezier(.2,.8,.2,1) both}
@keyframes heroEntrance{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.hero{min-height:620px;background-position:58% center}.hero:before{background:linear-gradient(90deg,rgba(7,18,20,.72),rgba(7,18,20,.20))}.hero h1{font-size:clamp(32px,8vw,45px)}}
@media(prefers-reduced-motion:reduce){.hero .container{animation:none}}
