/* Glass surfaces and text only; no film geometry changes. */
@property --rim-angle{syntax:'<angle>';initial-value:135deg;inherits:true}
/* Clear centre, polished rim and soft depth. */
.scene .glass{--glass-x:22%;--glass-y:0%;border:1px solid #ffffffa6;border-radius:25px;background:linear-gradient(125deg,#ffffff4a,#ffffff12 48%,#ffffff2b);backdrop-filter:blur(12px) saturate(115%);-webkit-backdrop-filter:blur(12px) saturate(115%);box-shadow:inset 0 2px 2px #ffffffd6,inset 2px 0 3px #ffffff59,inset 0 -2px 3px #352b4221,0 8px 15px #251d2f14,0 24px 48px #251d2f1f;color:#29282e;isolation:isolate}
.scene .glass::before{content:'';position:absolute;inset:4px;z-index:0;border-radius:20px;padding:1px;background:linear-gradient(145deg,#ffffffb8 0%,#ffffff18 34%,#ffffff00 48%,#ffffff55 78%,#ffffffb3 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none;mix-blend-mode:normal}
.scene .glass::after{content:'';position:absolute;inset:0;border-radius:inherit;z-index:0;background:radial-gradient(ellipse at var(--glass-x) var(--glass-y),#ffffff45,transparent 58%);pointer-events:none;opacity:.42;transition:opacity .4s ease}
.scene .glass:hover::after{opacity:.8}
.scene .glass>*{position:relative;z-index:1}
/* Preserve the existing deliberate coverage in the price chapter. */
.scene .glass.price{background:linear-gradient(125deg,#f8f9fc61,#f9fafc2e 55%,#edf0f44d);backdrop-filter:blur(25px) saturate(85%);-webkit-backdrop-filter:blur(25px) saturate(85%)}
.services-list h3:not(:last-child){border-bottom-color:#26232c21}
.services-list a:hover{color:#25242a}
.price-item{border-top-color:#26232c21}
/* Light moves around button rims on hover and keyboard focus. */
.nav .nav-links>a,.final h2 a{--rim-angle:135deg;position:relative;isolation:isolate;overflow:hidden;border:1px solid #ffffff80;border-radius:13px;background:linear-gradient(145deg,#ffffff47,#ffffff0d 58%,#ffffff26);backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);box-shadow:inset 0 1px 1px #fffffff0,inset 0 -1px 2px #2c243724,0 3px 7px #241e3012,0 9px 20px #241e300a;color:#29282e;opacity:1;transition:background .3s,box-shadow .3s}
.nav .nav-links>a::before,.final h2 a::before{content:'';display:block;position:absolute;inset:0;left:0;right:0;bottom:0;height:auto;border-radius:inherit;padding:1px;background:conic-gradient(from var(--rim-angle),#ffffff00 0deg,#ffffff30 55deg,#ffffffed 100deg,#ffffff12 150deg,#ffffff00 220deg,#ffffffcc 290deg,#ffffff00 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none;transform:none;transition:opacity .3s;opacity:.65}
.nav .nav-links>a:hover,.nav .nav-links>a:focus-visible,.final h2 a:hover,.final h2 a:focus-visible{background:linear-gradient(145deg,#ffffff66,#ffffff17 58%,#ffffff38);box-shadow:inset 0 1px 2px #fff,inset 0 -1px 2px #2c24371c,0 5px 10px #241e3018,0 12px 25px #241e3010;animation:glass-rim 2.8s linear infinite;text-decoration:none}
.nav .nav-links>a:hover::before,.final h2 a:hover::before{opacity:1;transform:none}
.nav .nav-links>a.active::after{position:absolute;left:calc(50% - 9px);bottom:4px;width:18px;height:2px;margin:0;border-radius:2px;background:#b7cf80}
.final h2 a{border-radius:999px}
.final h2 a::after{box-shadow:inset 0 1px 1px #ffffffb3,0 0 5px #bad58a40}
@keyframes glass-rim{to{--rim-angle:495deg}}
/* Static frosted surfaces avoid blurring every video frame on phones. */
@media(max-width:800px){
 .scene .glass{background:linear-gradient(125deg,#f8f9fcdc,#f9fafcbf 55%,#edf0f4d9);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:inset 0 1px 1px #fff,0 8px 24px #251d2f14}
 .scene .glass.price{background:linear-gradient(125deg,#f8f9fc,#f4f5f8);backdrop-filter:none;-webkit-backdrop-filter:none}
 .nav .nav-links,.nav .nav-links>a,.mobile-menu-toggle,.final h2 a,.contact-links a{backdrop-filter:none;-webkit-backdrop-filter:none}
 .nav .nav-links{background:#f5f5f8f5}
 .mobile-menu-toggle,.final h2 a{background:linear-gradient(145deg,#ffffffdf,#f0f1f5ce)}
 .nav .nav-links>a:hover,.nav .nav-links>a:focus-visible,.final h2 a:hover,.final h2 a:focus-visible{animation:none}
 .idea{overscroll-behavior:contain}
}
@media(prefers-reduced-motion:reduce){.nav .nav-links>a,.final h2 a,.scene .glass::after,.services-list a{animation:none!important;transition:none}}


