:root {
 --red:#AD3438; --red-dark:#87272B; --ink:#292727; --muted:#605E5A;
 --white:#fff; --soft:#F4F4F2; --line:#DEDEDA;
 --font:'Manrope',Arial,sans-serif; --wrap:1180px;
}
* { box-sizing:border-box; }
html { scroll-behavior:auto; scroll-padding-top:110px; }
body { margin:0; color:var(--ink); background:white; font:400 16px/1.8 var(--font); }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
img { display:block; width:100%; height:auto; }
svg { width:22px; height:22px; flex:none; }
h1,h2,h3 { margin:0; font-weight:600; line-height:1.25; letter-spacing:-.025em; }
h1 { font-size:clamp(36px,4vw,56px); }
h2 { font-size:clamp(28px,3vw,36px); }
h3 { font-size:22px; }
p { margin:0 0 22px; }
a:hover { color:var(--red); }
a,button,input,select,textarea,summary { outline-offset:5px; }
:focus-visible { outline:3px solid var(--red); }
::selection { background:var(--red); color:white; }
.wrap { width:min(var(--wrap),calc(100% - 80px)); margin-inline:auto; }
.skip-link { position:fixed; top:-120px; left:16px; z-index:100; background:white; color:var(--ink); padding:12px 22px; }
.skip-link:focus { top:12px; }
.utility { display:none; }
.site-header { position:sticky; top:0; z-index:50; background:white; border-bottom:1px solid var(--line); }
.header-inner { width:min(1280px,calc(100% - 70px)); display:flex; align-items:center; justify-content:space-between; gap:25px; min-height:92px; }
.brand { display:inline-flex; gap:12px; align-items:center; flex-shrink:0; }
.brand-logo { display:block; width:54px; height:54px; border-radius:50%; background:var(--ink); padding:2px; }
.brand-logo img { width:100%; height:100%; object-fit:contain; }
.brand-name { font-size:19px; font-weight:600; line-height:1.3; letter-spacing:-.02em; }
.brand-name>span { display:block; font-size:13px; font-weight:400; letter-spacing:.015em; margin-top:3px; }
.site-header nav { display:flex; align-items:center; gap:28px; font-size:14px; font-weight:600; }
.site-header nav>a[aria-current] { color:var(--red); }
.nav-call { display:flex; gap:9px; align-items:center; padding:10px 17px; background:var(--red); color:white; border-radius:7px; white-space:nowrap; }
.nav-call svg { width:18px; height:18px; }
.nav-call:hover { background:var(--red-dark); color:white; }
.menu-toggle { display:none; }
.is-home .site-header { position:fixed; left:0; right:0; background:transparent; border-color:#ffffff25; color:white; }
.is-home .site-header.is-scrolled { background:#262324F7; border-color:transparent; }
.is-home .site-header a:hover { color:#F4CECF; }
.is-home .site-header .nav-call:hover { color:white; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:11px 22px; border:1px solid transparent; border-radius:6px; font-size:14px; font-weight:600; cursor:pointer; }
.primary { background:var(--red); color:white; }
.primary:hover { background:var(--red-dark); color:white; }
.secondary { border-color:#BDBBB5; background:transparent; }
.secondary:hover { border-color:var(--red); color:var(--red); }
.button-row { display:flex; flex-wrap:wrap; gap:12px; }
.text-link { text-decoration:underline; text-underline-offset:5px; font-size:14px; font-weight:500; }
.eyebrow { font-size:14px; color:var(--muted); margin-bottom:15px; }
.photo-scene { position:relative; min-height:720px; height:min(800px,100svh); color:white; }
.scene-background,.scene-shade { position:absolute; inset:0; width:100%; height:100%; }
.scene-background { object-fit:cover; object-position:50% 50%; }
.scene-shade { background:#160F0CB3; }
.scene-content { position:relative; z-index:1; display:flex; height:100%; flex-direction:column; align-items:center; justify-content:space-between; padding-top:125px; padding-bottom:44px; }
.scene-message { text-align:center; }
.scene-logo { width:108px; height:108px; margin:0 auto 22px; object-fit:contain; border-radius:50%; background:#29272780; }
.scene-message h1 { font-size:48px; font-weight:500; line-height:1.18; letter-spacing:-.025em; }
.scene-rule { display:block; height:2px; width:130px; background:#D76267; margin:23px auto 20px; }
.scene-message p { font-size:18px; font-weight:400; line-height:1.65; margin-bottom:0; }
.scene-categories { display:grid; grid-template-columns:repeat(4,1fr); width:min(1060px,100%); gap:45px; margin-top:35px; }
.scene-categories a { text-align:center; font-size:16px; font-weight:600; color:white; }
.scene-categories img { height:160px; object-fit:cover; object-position:center; border-radius:9px; }
.scene-categories span { display:block; margin-top:15px; line-height:1.45; }
.scene-categories a:hover span { text-decoration:underline; text-underline-offset:5px; }
.quick-contact { padding:28px 0; background:var(--red); color:white; }
.quick-contact>.wrap { display:flex; justify-content:center; gap:38px; align-items:center; }
.quick-contact p { font-size:24px; font-weight:500; margin:0; }
.quick-contact .button { border-color:#ffffffA0; color:white; font-size:16px; }
.quick-contact .button:hover { background:white; color:var(--red); }
.service-feature { display:grid; grid-template-columns:1fr 1fr; gap:75px; align-items:center; padding-block:76px; }
.service-feature h2 { color:var(--red); margin-bottom:24px; }
.service-feature p { color:var(--muted); font-size:16px; }
.service-feature>img { aspect-ratio:1.45; object-fit:cover; border-radius:13px; }
.feature-photo { aspect-ratio:1.45; overflow:hidden; border-radius:13px; }
.feature-photo>img { width:100%; height:100%; object-fit:cover; transform:scale(1.16); }
.service-feature .button { margin-top:4px; }
.service-feature.reverse>img { grid-column:1; grid-row:1; }
.service-feature.reverse>div { grid-column:2; }
.feature-surface { background:var(--soft); }
.service-panels { display:grid; grid-template-columns:1fr 1fr; }
.service-panels article { position:relative; min-height:320px; color:white; overflow:hidden; }
.service-panels article>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.service-panels article:after { content:''; position:absolute; inset:0; background:#641D23DB; }
.service-panels article:last-child:after { background:#272727D9; }
.service-panels article>div { position:relative; z-index:1; max-width:590px; margin-inline:auto; padding:52px 45px; }
.service-panels h2 { font-size:30px; margin-bottom:20px; }
.service-panels p { max-width:500px; font-size:16px; }
.service-panels .button { border-color:#ffffffB3; color:white; }
.service-panels .button:hover { background:white; color:var(--red); }
.about-feature>img { aspect-ratio:1.8; }
.home-contact { background:var(--soft); padding:54px 0; }
.home-contact h2 { color:var(--red); text-align:center; margin-bottom:38px; }
.home-contact-grid { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:60px; }
.home-contact-grid h3 { font-size:18px; margin-bottom:18px; }
.home-contact-grid a { display:block; overflow-wrap:anywhere; }
.home-contact-grid p { font-size:16px; color:var(--muted); }
.home-contact-grid .payment { font-size:14px; }
.contact-band { background:var(--red); color:white; padding-block:34px; }
.contact-band>.wrap { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.contact-band h2 { font-size:28px; margin-bottom:5px; }
.contact-band p { font-size:16px; margin:0; }
.contact-band .band-phone { display:flex; align-items:center; gap:10px; font-size:25px; font-weight:600; white-space:nowrap; }
.contact-band .button { border-color:#ffffffA0; color:white; }
.contact-band a:hover { color:white; }
.contact-band .button:hover { color:var(--red); background:white; }
.page-intro { padding-top:28px; padding-bottom:50px; }
.breadcrumb { display:inline-block; font-size:13px; color:var(--muted); margin-bottom:30px; }
.page-intro h1 { color:var(--red); font-size:46px; }
.page-lead { max-width:740px; font-size:17px; line-height:1.8; color:var(--muted); margin:20px 0 0; }
.offer-layout { display:grid; grid-template-columns:230px 1fr; gap:65px; align-items:start; padding-bottom:75px; }
.offer-nav { position:sticky; top:118px; border-top:1px solid var(--line); padding-top:20px; }
.offer-nav>p { color:var(--muted); font-size:13px; margin-bottom:13px; }
.offer-nav>a { display:block; padding:13px 0; border-bottom:1px solid var(--line); font-size:14px; font-weight:500; }
.offer-nav .offer-nav-contact { color:var(--red); border:0; margin-top:15px; font-weight:600; }
.service-detail { margin-bottom:52px; padding-bottom:42px; border-bottom:1px solid var(--line); scroll-margin-top:15px; }
.service-banner { aspect-ratio:3.07; object-fit:cover; border-radius:9px; }
.service-detail h2 { font-size:32px; color:var(--red); margin:25px 0 15px; }
.service-intro { color:var(--muted); font-size:16px; }
.service-groups { display:grid; grid-template-columns:1fr 1fr; gap:25px 38px; margin-top:26px; }
.service-groups h3 { font-size:16px; font-weight:600; letter-spacing:0; }
.service-groups ul { margin:15px 0 0; padding-left:18px; color:var(--muted); font-size:16px; }
.service-groups li { margin-bottom:10px; padding-left:3px; }
.service-groups li::marker { color:var(--red); }
.business-note { background:var(--soft); padding:34px 36px; }
.business-note h2 { font-size:30px; margin-bottom:20px; }
.business-note p { color:var(--muted); font-size:16px; }
.studio-main { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.studio-main>img { aspect-ratio:1.25; object-fit:cover; border-radius:12px; }
.studio-main h2 { color:var(--red); margin-bottom:24px; }
.studio-main div>p:not(.eyebrow) { color:var(--muted); font-size:16px; }
.section { padding-block:75px; }
.approach { display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.approach h2 { color:var(--red); }
.approach p { color:var(--muted); font-size:16px; }
.terms-layout { padding-bottom:65px; }
.terms-section { padding-bottom:45px; margin-bottom:42px; border-bottom:1px solid var(--line); scroll-margin-top:15px; }
.terms-section>h2 { color:var(--red); margin-bottom:24px; }
.terms-section>p { max-width:780px; color:var(--muted); font-size:16px; }
.table-scroll { overflow-x:auto; margin-top:26px; }
table { width:100%; border-collapse:collapse; text-align:left; font-size:16px; }
caption { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
th,td { padding:18px 22px; border-bottom:1px solid var(--line); font-weight:400; }
thead th { background:var(--soft); color:var(--muted); font-size:14px; font-weight:600; }
tbody th { font-weight:600; }
tbody tr:nth-last-child(-n+2) td:last-child { color:var(--red); font-weight:600; }
.terms-section .note { font-size:14px; margin-top:22px; }
.terms-columns { display:grid; grid-template-columns:1fr 1fr; gap:65px; }
.terms-columns h3 { font-size:21px; }
.plain-list { padding-left:19px; margin:22px 0 0; color:var(--muted); font-size:16px; }
.plain-list li { margin-bottom:16px; padding-left:4px; }
.plain-list li::marker { color:var(--red); }
.shipping-section { display:grid; grid-template-columns:1fr 1fr; gap:80px; border:0; padding:10px 0 0; margin-bottom:0; }
.shipping-section h2 { color:var(--red); margin-bottom:23px; }
.shipping-section>div>p:not(.eyebrow) { color:var(--muted); font-size:16px; }
.steps { list-style:none; margin:0; padding:0; counter-reset:steps; }
.steps li { counter-increment:steps; position:relative; padding:0 0 24px 43px; margin-bottom:24px; border-bottom:1px solid var(--line); }
.steps li:last-child { border:0; margin-bottom:0; }
.steps li:before { content:counter(steps); position:absolute; left:0; top:0; font-size:23px; line-height:1.2; font-weight:600; color:var(--red); }
.steps h3 { font-size:20px; margin-bottom:13px; }
.steps p { font-size:16px; color:var(--muted); margin:0; }
.contact-main { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; padding-bottom:65px; }
.contact-details>h2 { font-size:28px; margin-bottom:12px; }
.contact-details>p { font-size:16px; color:var(--muted); }
.contact-item { display:flex; gap:20px; margin-top:28px; }
.contact-item>svg { color:var(--red); margin-top:3px; }
.contact-item h3 { font-size:14px; color:var(--muted); margin-bottom:10px; }
.contact-item a:not(.text-link) { display:block; }
.contact-phone { font-size:29px; font-weight:600; line-height:1.3; }
.contact-email { font-size:16px; overflow-wrap:anywhere; }
.contact-item p { font-size:16px; margin:0 0 12px; }
.contact-photo>img { aspect-ratio:1.35; object-fit:cover; border-radius:12px 12px 0 0; }
.contact-photo>div { background:var(--soft); padding:22px 28px; }
.contact-photo p { font-size:20px; font-weight:500; margin:0 0 7px; }
.hours { margin:0; min-width:275px; font-size:16px; }
.hours>div { display:flex; justify-content:space-between; gap:25px; margin-bottom:8px; }
.hours dd { margin:0; font-weight:500; }
.contact-payment { margin-top:26px!important; font-size:14px!important; }
.message-section { background:var(--soft); padding-block:65px; }
.message-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; }
.message-layout h2 { color:var(--red); margin-bottom:23px; }
.message-layout>div p:not(.eyebrow) { color:var(--muted); font-size:16px; }
.message-layout .form-explainer { font-size:14px!important; padding-left:18px; border-left:2px solid var(--red); }
.inquiry-form { display:flex; flex-direction:column; gap:22px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.inquiry-form label { display:block; font-size:14px; font-weight:600; margin-bottom:8px; }
.inquiry-form input,.inquiry-form select,.inquiry-form textarea { width:100%; padding:13px 14px; min-height:49px; border:1px solid #B6B3AD; border-radius:4px; background:white; color:var(--ink); font-size:16px; }
.inquiry-form textarea { line-height:1.7; resize:vertical; min-height:150px; }
.inquiry-form small { display:block; font-size:12px; color:var(--muted); margin-top:5px; }
.inquiry-form>.button { align-self:start; min-width:190px; }
.inquiry-form .button:disabled { opacity:.6; cursor:wait; }
.form-status { font-size:14px; margin:0; }
.form-status:empty { display:none; }
.bank-section { padding-block:34px 60px; }
.bank-section details { max-width:850px; }
.bank-section summary { font-size:14px; cursor:pointer; min-height:44px; padding-block:10px; }
.bank-section details>div { padding-top:23px; }
.bank-section p { font-size:14px; color:var(--muted); }
.bank-section .account-number { font-size:18px; font-weight:600; color:var(--ink); overflow-wrap:anywhere; }
.error-page { min-height:55vh; padding-block:80px; }
.error-page h1 { color:var(--red); margin-bottom:23px; }
.error-page>p:not(.eyebrow) { color:var(--muted); max-width:620px; }
.site-footer { background:#292727; color:#F4F1ED; padding-top:55px; }
.footer-grid { display:grid; grid-template-columns:1.4fr .75fr 1.2fr 1.1fr; gap:40px; padding-bottom:45px; }
.footer-grid h2 { font-size:14px; letter-spacing:0; margin-bottom:18px; }
.footer-brand .brand-name { font-size:18px; }
.footer-brand .brand-logo { width:49px; height:49px; }
.footer-grid p,.footer-grid>div>a:not(.brand) { font-size:13px; line-height:1.9; }
.footer-grid p { color:#D0CCC6; }
.footer-grid>div>a:not(.brand) { display:block; margin-bottom:7px; overflow-wrap:anywhere; }
.footer-grid>div:first-child p { margin-top:20px; }
.footer-grid strong { color:white; font-weight:500; }
.site-footer a:hover { color:white; text-decoration:underline; text-underline-offset:4px; }
.payment { margin-top:17px; }
.footer-bottom { display:flex; justify-content:space-between; padding-block:18px; font-size:12px; border-top:1px solid #ffffff25; color:#D0CCC6; }
@media(max-width:1100px) {
 .header-inner { width:calc(100% - 48px); }
 .site-header nav { gap:20px; }
 .brand-name { font-size:17px; }
 .brand-logo { width:48px; height:48px; }
 .scene-categories { gap:28px; }
 .service-feature { gap:50px; }
 .footer-grid { gap:26px; }
}
@media(max-width:900px) {
 .wrap { width:calc(100% - 56px); }
 .header-inner { min-height:82px; width:calc(100% - 48px); }
 .menu-toggle { display:flex; gap:12px; align-items:center; border:0; padding:12px 0 12px 12px; background:transparent; color:inherit; font-size:14px; cursor:pointer; }
 .menu-toggle i { display:block; width:23px; height:14px; border-top:2px solid; border-bottom:2px solid; }
 .menu-toggle[aria-expanded=true] i { height:0; border-bottom:0; transform:rotate(45deg); position:relative; }
 .menu-toggle[aria-expanded=true] i:after { content:''; display:block; width:23px; border-top:2px solid; position:absolute; top:-2px; transform:rotate(90deg); }
 .site-header nav { display:none; position:absolute; top:100%; left:0; right:0; background:white; border-bottom:1px solid var(--line); padding:16px 28px 25px; flex-direction:column; gap:0; align-items:stretch; }
 .site-header nav.is-open { display:flex; }
 .site-header nav>a { font-size:16px; padding:12px 0; }
 .site-header nav>.nav-call { justify-content:center; margin-top:12px; padding:12px; }
 .is-home .site-header nav { background:#292727; border-color:#ffffff30; }
 .photo-scene { min-height:730px; height:800px; }
 .scene-content { padding-top:115px; padding-bottom:38px; }
 .scene-message h1 { font-size:42px; }
 .scene-logo { width:100px; height:100px; }
 .scene-categories { grid-template-columns:repeat(4,1fr); gap:22px; }
 .scene-categories img { height:130px; }
 .scene-categories a { font-size:14px; }
 .quick-contact p { font-size:21px; }
 .quick-contact>.wrap { gap:25px; }
 .quick-contact .button { font-size:14px; white-space:nowrap; }
 .service-feature { gap:38px; padding-block:60px; }
 .service-feature>img { aspect-ratio:1.1; }
 .feature-photo { aspect-ratio:1.1; }
 .footer-grid { grid-template-columns:1fr 1fr; gap:35px 40px; }
}
@media(max-width:600px) {
 html { scroll-padding-top:90px; }
 .wrap { width:calc(100% - 40px); }
 .header-inner { min-height:77px; width:calc(100% - 36px); gap:15px; }
 .brand { gap:10px; }
 .brand-logo { width:44px; height:44px; }
 .brand-name { font-size:16px; }
 .brand-name>span { font-size:12px; }
 .menu-toggle { font-size:13px; gap:9px; }
 .photo-scene { height:auto; min-height:0; }
 .scene-content { padding-top:105px; padding-bottom:34px; gap:30px; }
 .scene-logo { width:91px; height:91px; margin-bottom:22px; }
 .scene-message h1 { font-size:32px; line-height:1.3; }
 .scene-message p { font-size:16px; line-height:1.65; }
 .scene-rule { margin-block:22px; width:95px; }
 .scene-categories { grid-template-columns:1fr 1fr; gap:23px 20px; margin-top:5px; }
 .scene-categories img { height:119px; border-radius:7px; }
 .scene-categories a { font-size:14px; }
 .scene-categories span { margin-top:10px; }
 .scene-background { object-position:51% 50%; }
 .quick-contact { padding-block:28px; }
 .quick-contact>.wrap { flex-direction:column; text-align:center; gap:18px; }
 .quick-contact p { font-size:20px; line-height:1.45; }
 .service-feature { grid-template-columns:1fr; gap:30px; padding-block:48px; }
 .service-feature h2 { font-size:28px; margin-bottom:20px; }
 .service-feature>img { aspect-ratio:1.55; border-radius:10px; }
 .feature-photo { aspect-ratio:1.55; border-radius:10px; }
 .service-feature.reverse>img,.service-feature.reverse>div { grid-column:auto; grid-row:auto; }
 .footer-grid { grid-template-columns:1fr; gap:28px; }
 .footer-grid>div:nth-child(2) { display:grid; grid-template-columns:1fr 1fr; gap:3px 20px; }
 .footer-grid>div:nth-child(2) h2 { grid-column:1/-1; margin-bottom:12px; }
 .footer-bottom { font-size:12px; }
 .footer-bottom span:last-child { display:none; }
 .site-footer { padding-top:42px; }
}
@media(prefers-reduced-motion:reduce) {
 *,*:before,*:after { animation:none!important; transition:none!important; }
}
@media(max-width:1100px) {
 .home-contact-grid { gap:35px; }
 .offer-layout { grid-template-columns:205px 1fr; gap:45px; }
 .studio-main,.approach,.contact-main,.message-layout,.shipping-section { gap:50px; }
 .contact-band .band-phone { font-size:22px; }
}
@media(max-width:900px) {
 .service-panels article>div { padding:38px 28px; }
 .service-panels h2 { font-size:26px; }
 .home-contact-grid { grid-template-columns:1fr 1fr; gap:32px; }
 .home-contact-grid>div:first-child { grid-column:1/-1; }
 .contact-band>.wrap { flex-wrap:wrap; }
 .contact-band h2 { font-size:25px; }
 .offer-layout { grid-template-columns:1fr; gap:32px; }
 .offer-nav { position:static; display:flex; flex-wrap:wrap; gap:0 22px; padding-top:0; border-top:0; }
 .offer-nav>p { width:100%; margin:0 0 7px; }
 .offer-nav>a { padding:10px 0; }
 .offer-nav .offer-nav-contact { margin-top:0; }
 .studio-main { grid-template-columns:1fr; gap:33px; }
 .studio-main>img { aspect-ratio:1.7; }
 .message-layout { grid-template-columns:1fr; gap:35px; }
 .form-row { grid-template-columns:1fr 1fr; }
 .contact-main { gap:35px; }
 .contact-details>h2 { font-size:24px; }
 .contact-item { gap:13px; }
 .contact-email { font-size:14px; }
 .hours { min-width:235px; font-size:14px; }
 .terms-columns { gap:40px; }
 .shipping-section { gap:38px; }
 .page-intro h1 { font-size:40px; }
}
@media(max-width:600px) {
 .service-panels { grid-template-columns:1fr; }
 .service-panels article { min-height:0; }
 .service-panels article>div { padding:38px 24px; }
 .service-panels h2 { font-size:26px; }
 .home-contact { padding-block:44px; }
 .home-contact h2 { text-align:left; margin-bottom:30px; }
 .home-contact-grid { grid-template-columns:1fr; gap:25px; }
 .home-contact-grid>div:first-child { grid-column:auto; }
 .home-contact-grid h3 { font-size:18px; margin-bottom:13px; }
 .home-contact-grid p { margin-bottom:12px; }
 .contact-band { padding-block:31px; }
 .contact-band>.wrap { flex-direction:column; align-items:start; gap:22px; }
 .contact-band .band-phone { font-size:24px; }
 .page-intro { padding-top:24px; padding-bottom:35px; }
 .breadcrumb { margin-bottom:23px; }
 .page-intro h1 { font-size:32px; }
 .page-lead { font-size:16px; margin-top:18px; }
 .offer-layout { gap:25px; padding-bottom:45px; }
 .offer-nav { gap:0 17px; padding-bottom:16px; border-bottom:1px solid var(--line); }
 .offer-nav>a { font-size:14px; }
 .service-detail { margin-bottom:34px; padding-bottom:28px; }
 .service-detail h2 { font-size:27px; margin-top:20px; }
 .service-groups { grid-template-columns:1fr; gap:22px; margin-top:22px; }
 .service-groups ul { font-size:16px; }
 .business-note { padding:26px 24px; }
 .business-note h2 { font-size:26px; }
 .studio-main>img { aspect-ratio:1.5; }
 .studio-main h2 { font-size:28px; }
 .section { padding-block:45px; }
 .approach { grid-template-columns:1fr; gap:22px; }
 .approach h2 { font-size:28px; }
 .terms-layout { padding-bottom:40px; }
 .terms-section { margin-bottom:32px; padding-bottom:30px; }
 .terms-section>h2 { font-size:27px; }
 .table-scroll { margin-top:23px; }
 table { font-size:14px; min-width:330px; }
 th,td { padding:14px 9px; line-height:1.6; }
 thead th { font-size:12px; }
 .terms-columns { grid-template-columns:1fr; gap:27px; }
 .terms-columns h3 { font-size:20px; }
 .shipping-section { display:block; padding-bottom:0; margin-bottom:0; }
 .shipping-section h2 { font-size:28px; }
 .steps { margin-top:35px; }
 .steps h3 { font-size:19px; }
 .contact-main { grid-template-columns:1fr; gap:35px; padding-bottom:45px; }
 .contact-details>h2 { font-size:25px; }
 .contact-item { gap:16px; }
 .contact-item>div { min-width:0; }
 .contact-email { font-size:15px; }
 .hours { min-width:250px; font-size:14px; }
 .contact-photo>img { aspect-ratio:1.65; }
 .contact-photo>div { padding:20px 22px; }
 .contact-photo p { font-size:18px; }
 .message-section { padding-block:45px; }
 .message-layout h2 { font-size:28px; }
 .form-row { grid-template-columns:1fr; gap:21px; }
 .inquiry-form>.button { align-self:stretch; }
 .bank-section { padding-block:27px 43px; }
 .bank-section .account-number { font-size:16px; }
 .error-page { padding-block:55px; }
 .error-page h1 { font-size:32px; }
}
@media(max-width:360px) {
 .brand-name { font-size:14px; }
 .brand-logo { width:39px; height:39px; }
 .menu-toggle span { display:none; }
 .scene-message h1 { font-size:29px; }
 .scene-categories { gap:20px 14px; }
 .scene-categories a { font-size:13px; }
 .hours { min-width:225px; }
}
