/* Premium Billiards: product detail, snooker editorial and qualified enquiries. */
.rasson-hero{overflow:clip}
.rasson .headinner{gap:22px}
.rasson #navigation{gap:17px;font-size:12px}
.rasson #navigation a{white-space:nowrap}
.rasson .decision-actions{align-items:stretch}
.rasson .decision-actions .btn{max-width:100%;min-width:0;padding:16px 20px}
.rasson .product-info .decision-actions{display:grid;grid-template-columns:1fr}
.rasson .delivery-included{display:flex;gap:13px;align-items:center;padding:17px 0;margin:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.delivery-icon{width:32px;height:32px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;color:var(--accent);flex-shrink:0}
.delivery-included strong,.delivery-included span:not(.delivery-icon){display:block}
.delivery-included strong{font-size:15px;color:var(--accent)}
.delivery-included div>span{font-size:12px;color:var(--muted);margin-top:4px}
.service-promise{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:40px}
.service-promise>p{font-size:22px;max-width:650px;color:var(--muted)}
.service-promise>div{border-left:1px solid var(--line);padding-left:50px;display:flex;flex-direction:column}
.service-promise strong{font:italic 76px var(--serif);color:var(--accent);line-height:1.2}
.service-promise span{font-size:15px;color:var(--muted)}
.feature-split{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center}
.feature-split.reverse{grid-template-columns:1fr 1.25fr}
.feature-split>div{min-width:0}
.feature-split h3{font:48px/1.1 var(--serif);margin:0 0 24px}
.feature-split p{color:var(--muted);margin-bottom:22px}
.feature-split .eyebrow{color:var(--accent)}
.feature-split .btn{margin-top:10px}
.editorial-photo{margin:0;min-width:0;overflow:hidden;border-radius:14px}
.editorial-photo img{width:100%;aspect-ratio:1.5;object-fit:cover}
.editorial-photo figcaption{padding:12px 4px;color:var(--muted);font-size:11px;line-height:1.5}
.model-cards:has(>.card:only-child){grid-template-columns:minmax(0,1fr)}
.model-cards>.card:only-child{display:grid;grid-template-columns:1.2fr 1fr}
.model-cards>.card:only-child .card-image img{height:100%;aspect-ratio:1.5;object-fit:cover}
.film{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--paper);min-width:0}
.film-screen{aspect-ratio:16/9;background:#0e0e0c;position:relative}
.film-screen>button{position:relative;padding:0;border:0;width:100%;height:100%;background:transparent;color:#fff;display:block}
.film-screen img{width:100%;height:100%;object-fit:cover;filter:brightness(.8)}
.film-screen iframe,.film-screen video{width:100%;height:100%;border:0;display:block}
.play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border:1px solid #ead6ad;background:#d6b777dd;border-radius:50%;display:grid;place-items:center;color:#1d1a14;font-size:22px;padding-left:4px;transition:transform .2s}
.film-screen button:hover .play-icon{transform:translate(-50%,-50%) scale(1.06)}
.film-duration{position:absolute;right:15px;bottom:12px;padding:4px 10px;background:#18160fbb;border-radius:5px;font-size:12px}
.film-copy{padding:26px}
.film-copy .eyebrow{font-size:10px;margin-bottom:14px}
.film-copy h3{font-size:24px;margin-bottom:15px}
.film-copy p:not(.eyebrow){font-size:14px;color:var(--muted)}
.film-copy .film-status:empty{display:none}
.film-copy .source-link{margin-top:14px;display:inline-block}
.planner-promo{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:40px;background:var(--paper);border:1px solid var(--line);border-radius:16px}
.planner-promo .lead{margin:0 0 24px}
.planner-promo h3{margin-bottom:22px}
.planner-promo .small{margin-bottom:24px}
.room-sign{display:flex;flex-direction:column;gap:16px;text-align:center;border:1px solid #be9f6255;padding:65px 20px;background:repeating-linear-gradient(0deg,transparent,transparent 24px,#b2986320 25px),repeating-linear-gradient(90deg,transparent,transparent 24px,#b2986320 25px);border-radius:12px}
.room-sign strong{font:italic clamp(34px,4.5vw,65px) var(--serif);color:var(--accent);white-space:nowrap}
.room-sign span{font-size:12px;color:var(--muted)}
.club-directory{display:grid;grid-template-columns:1.4fr 1fr;gap:45px;padding:38px;border:1px solid var(--line);border-radius:14px;align-items:center;background:var(--paper)}
.club-directory h3{font-size:29px;margin-bottom:20px}
.club-directory p{color:var(--muted)}
.club-directory .btn{justify-self:end}
.conversion-band .lead{margin-top:0;max-width:700px}
.supply-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:start}
.display-price{font:clamp(30px,3.3vw,48px) var(--serif);margin:0 0 18px}
.supply-grid .btn{margin-top:24px}
.rasson .specification{min-width:0}
.rasson .specification th{width:42%}
.rasson .specification td,.rasson .specification th{overflow-wrap:anywhere}
.operating-grid{gap:40px}
.operating-grid article{padding:28px 0;border-top:1px solid var(--line)}
.operating-grid h3{font-size:25px;margin-bottom:18px}
.operating-grid p{font-size:15px;color:var(--muted)}
.review-note{padding:36px;background:var(--paper);border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;justify-content:center;gap:25px;min-width:0}
.review-note h3{font:32px/1.15 var(--serif);margin-bottom:20px}
.review-note p{color:var(--muted);font-size:14px}
.review-note .eyebrow{color:var(--accent);font-size:10px}
.review-note .text-link{align-self:flex-start}
.editorial-list{padding-left:20px;color:var(--muted);font-size:15px}
.editorial-list li{margin:16px 0;padding-left:7px}
.editorial-list strong{color:var(--ink)}
.snooker-points{display:grid;grid-template-columns:repeat(7,1fr);gap:14px;padding:30px 0 40px}
.snooker-points>div{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;font-size:12px}
.snooker-points>div>span:last-child{color:var(--muted)}
.snooker-ball{width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffffff70,transparent 55%),var(--ball);border:1px solid #d5b67944;box-shadow:0 8px 14px #0004}
.factory-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.factory-gallery .editorial-photo:first-child{grid-column:1/-1}
.factory-gallery .editorial-photo:first-child img{aspect-ratio:2.1}
.experience-timeline{max-width:950px}
.experience-timeline article{display:grid;grid-template-columns:210px 1fr;gap:35px;padding:35px 0;border-top:1px solid var(--line)}
.experience-timeline article>span{color:var(--accent);font-size:11px;letter-spacing:.13em}
.experience-timeline h3{margin-bottom:15px}
.experience-timeline p{color:var(--muted)}
.consultation-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.consultation-intro h1{font-size:clamp(36px,4vw,60px)}
.consultation-intro .editorial-photo{margin-top:30px}
.consultation-form>.field{margin-bottom:22px}
.consultation-form fieldset{margin-top:25px}
.consultation-form legend{font-size:20px}
.consultation-form .small{margin-top:12px}
.consultation-form #consult-submit{width:100%;margin-top:24px}
.consultation-form #consult-status{margin-top:18px;font-size:14px;color:var(--accent)}
.footer-resource-links{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:25px}
.rasson .page-narrow h3{margin-top:32px;margin-bottom:18px}
.rasson #photo-dialog>.btn{display:flex;margin:18px auto 0;width:max-content;max-width:100%}
.rasson #photo-dialog img{max-height:65vh;object-fit:contain}
@media(max-width:1180px) and (min-width:821px){.rasson #navigation{gap:10px;font-size:11px}.rasson .head-cta{display:none}.rasson .headinner{gap:12px}.rasson .headinner .logo{font-size:20px}.rasson .premium-logo-name{font-size:22px}}
@media(max-width:820px){
 .rasson #navigation{font-size:15px;gap:0}
 .service-promise,.feature-split,.feature-split.reverse,.planner-promo,.club-directory,.supply-grid,.consultation-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .service-promise>p{font-size:18px}.service-promise>div{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.service-promise strong{font-size:58px}
 .feature-split h3{font-size:37px}.feature-split.reverse .editorial-photo{grid-row:1}
 .model-cards>.card:only-child{grid-template-columns:1fr}
 .planner-promo{padding:24px}.room-sign{padding:40px 15px}.room-sign strong{font-size:43px}
 .club-directory{padding:25px}.club-directory .btn{justify-self:stretch}
 .decision-actions{display:grid!important;grid-template-columns:1fr;width:100%}.decision-actions .btn{width:100%}
 .rasson .rasson-hero .decision-actions{grid-template-columns:1fr 1fr;gap:9px}.rasson .rasson-hero .decision-actions .btn{padding:12px 9px;font-size:11px}
 .operating-grid{gap:8px}.operating-grid article{padding:23px 0}.operating-grid .number{margin-bottom:16px}
 .review-note{padding:26px}.review-note h3{font-size:28px}.film-copy{padding:23px}.film-copy h3{font-size:23px}
 .snooker-points{grid-template-columns:repeat(4,1fr);gap:24px 10px;padding:10px 0 30px}
 .factory-gallery{grid-template-columns:1fr;gap:20px}.factory-gallery .editorial-photo:first-child{grid-column:auto}.factory-gallery .editorial-photo:first-child img{aspect-ratio:1.5}
 .experience-timeline article{grid-template-columns:1fr;gap:15px;padding:25px 0}
 .consultation-grid>.panel{padding:23px}.consultation-intro .editorial-photo{display:none}
 .consultation-intro h1{font-size:39px}.footer-resource-links{gap:6px 20px}
 .rasson .specification th,.rasson .specification td{padding:13px 11px;font-size:12px}.rasson .specification th{width:42%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.play-icon{transition:none}}

.film-embed{position:absolute;inset:0}.film-embed iframe{width:100%;height:100%}.process-sheets .editorial-photo img{aspect-ratio:auto;object-fit:contain;background:#fff}.process-sheets .editorial-photo{border:1px solid var(--line);padding:12px;background:var(--paper)}

.gallery[data-count="1"] .gallery-controls,.gallery[data-count="1"] .thumbs{display:none}.consultation-form input,.consultation-form select,.consultation-form textarea,.consultation-form button{scroll-margin-top:110px;scroll-margin-bottom:110px}
