/* v1.0.22 first-party premium franchise storefront. */
.fr-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 79% 43%,#3a2813 0%,#15120d 41%,#080806 85%);border-bottom:1px solid #9d753d47}.fr-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(110deg,transparent 0 98px,#d7b16b12 99px 100px);pointer-events:none}.fr-hero-inner{min-height:565px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative;padding-top:95px;padding-bottom:110px}.fr-hero h1,.fr-enquiry h2{font-size:clamp(46px,6vw,88px);line-height:1.05;letter-spacing:-.03em;max-width:750px;margin:21px 0}.fr-hero h1 em,.fr-packages h2 em,.fr-enquiry h2 em{background:linear-gradient(95deg,#bc8e3e,#fff0c2,#ad803b);-webkit-background-clip:text;background-clip:text;color:transparent}.fr-hero p,.fr-enquiry p{max-width:570px;color:#d5c7ab;line-height:1.85;margin-bottom:29px}.fr-orbit{position:absolute;right:5%;width:clamp(230px,31vw,400px);aspect-ratio:1;display:grid;place-items:center;pointer-events:none;opacity:.78;filter:drop-shadow(0 0 65px #b8892f5c)}.fr-orbit:before,.fr-orbit:after{content:"";position:absolute;inset:0;border:1px solid #d2a9618c;border-radius:50%;transform:rotateX(66deg) rotateY(22deg);animation:frSpin 22s linear infinite}.fr-orbit:after{inset:11%;transform:rotateY(70deg) rotateX(23deg);animation-direction:reverse}.fr-orbit img{width:65%;max-height:65%;object-fit:contain}.fr-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.fr-package{position:relative;overflow:hidden;padding:clamp(25px,4vw,53px);background:linear-gradient(145deg,#242017,#0d0c0a 75%);border:1px solid #b08a4a64;box-shadow:0 15px 45px #0008;transition:transform .35s,border-color .35s}.fr-package:hover{transform:translateY(-9px) rotateX(1deg);border-color:#e4bc74}.fr-package.fr-featured{background:radial-gradient(circle at 100% 0%,#6f4a1c66,transparent 55%),linear-gradient(135deg,#262016,#0b0b0a)}.fr-package-shine{position:absolute;inset:-80%;background:linear-gradient(100deg,transparent 48%,#ffe6a515 50%,transparent 52%);transform:translateX(-50%);pointer-events:none;animation:frSweep 9s ease-in-out infinite}.fr-package h3{font:clamp(32px,3vw,47px)/1.13 Georgia,serif;color:#fae7b7;margin:20px 0}.fr-package p{color:#d1c4ac}.fr-package ul{margin:25px 0 35px;padding-left:21px;color:#d1c4ac;line-height:2}.fr-package li::marker{color:#e7bd72}.fr-offer{display:inline-block;padding:8px 15px;border:1px solid #e8c37b;color:#f7d990;background:#bd8b2f1f;font-weight:700;margin-top:20px}.fr-price{font-size:29px!important;color:#f4d696!important}.fr-price small{font-size:12px;color:#bdad8c}.fr-disclaimer{font-size:12px;color:#b8ab92;max-width:870px;margin:30px auto;text-align:center}.fr-enquiry{background:radial-gradient(circle at 85% 0,#6c4b2538,transparent 43%),#0d0c0a}.fr-enquiry-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw}.fr-enquiry h2{font-size:clamp(34px,4vw,58px)}.fr-form{background:linear-gradient(150deg,#1e1b15,#12110e);border:1px solid #b58e504d;padding:clamp(20px,3vw,40px);box-shadow:0 20px 65px #0006}.fr-form label{color:#ead9b5;display:block;margin-bottom:17px;font-size:13px}.fr-form input:not([type=checkbox]),.fr-form select,.fr-form textarea{display:block;width:100%;margin-top:8px;padding:13px 14px;color:#f5ebd1;background:#100e0b;border:1px solid #ad8a566b;border-radius:4px;min-width:0}.fr-form input:focus,.fr-form select:focus,.fr-form textarea:focus{outline:2px solid #e2b96d}.fr-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.fr-consent{display:flex!important;align-items:flex-start;gap:12px;line-height:1.6}.fr-consent input{margin-top:4px;flex:none}.fr-form .honeypot{position:absolute!important;left:-9999px;opacity:0}.fr-package .btn-outline{max-width:100%;text-align:center}.fr-package .eyebrow{letter-spacing:2px}@keyframes frSpin{to{transform:rotateY(360deg) rotateX(65deg)}}@keyframes frSweep{0%,65%{transform:translateX(-55%)}90%,100%{transform:translateX(50%)}}@media(max-width:950px){.fr-orbit{opacity:.19;right:-12%}.fr-hero-inner{min-height:450px}.fr-package-grid,.fr-enquiry-layout{grid-template-columns:1fr}.fr-package{padding:30px}}@media(max-width:560px){.fr-hero-inner{padding-top:65px;padding-bottom:74px}.fr-hero h1{font-size:49px}.fr-form .form-grid{grid-template-columns:1fr}.fr-package h3{font-size:32px}.fr-enquiry{padding-bottom:135px}}@media(prefers-reduced-motion:reduce){.fr-orbit:before,.fr-orbit:after,.fr-package-shine{animation:none!important}.fr-package:hover{transform:none}}

/* v1.0.24: Franchise form is full width; checkbox must never inherit generic 100% input width. */
.fr-enquiry-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(24px,5vw,78px)}
.fr-enquiry-layout>*{min-width:0;max-width:100%}
.customer-form.fr-form{display:flex;flex-direction:column;gap:19px;width:100%;min-width:0}
.fr-form .form-grid{width:100%;gap:12px 16px}
.fr-form .form-grid>label{min-width:0;overflow-wrap:break-word}
.fr-form .form-grid input,.fr-form .form-grid select,.fr-form textarea{max-width:100%;box-sizing:border-box}
.customer-form.fr-form label.fr-consent{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:start;justify-content:start;column-gap:13px;width:100%;max-width:100%;min-width:0;margin:4px 0 5px;padding:13px 14px;background:#211b1294;border:1px solid #b8935355;border-radius:8px;font-size:13px;line-height:1.75;letter-spacing:normal;text-transform:none;overflow:visible}
.customer-form.fr-form .fr-consent input[type=checkbox]{appearance:auto;display:block!important;width:19px!important;height:19px!important;min-width:19px!important;max-width:19px!important;padding:0!important;margin:3px 0 0!important;flex:0 0 19px;accent-color:#dfb96d;box-shadow:none}
.customer-form.fr-form .fr-consent span{display:block;width:auto!important;min-width:0;max-width:100%;overflow-wrap:break-word;word-break:normal;white-space:normal;line-height:1.7}
.fr-form>.btn-gold{width:100%;max-width:100%;text-align:center;white-space:normal;min-height:54px}
.fr-module-notice{border:1px solid #b793575e;padding:20px;color:#ead3ab;background:#1f1912;border-radius:10px;line-height:1.8}
@media(max-width:950px){.fr-enquiry-layout{grid-template-columns:minmax(0,1fr);gap:25px}}
@media(max-width:560px){.fr-form{padding:clamp(15px,5vw,25px)}.fr-form .form-grid{grid-template-columns:minmax(0,1fr)}.customer-form.fr-form label.fr-consent{padding:12px;font-size:12px}.fr-form .btn-gold{padding:16px}}
