/* Alina 2.2 — warm architectural editorial, real products, purposeful motion. */
:root{--brand-clay:#9b5d42;--brand-olive:#3c453c;--brand-soft:#ebe5da;--brand-rule:rgba(23,23,20,.18)}
.brand-small,.brand-index{font-size:10px;letter-spacing:.16em;line-height:1.6;text-transform:uppercase}
.brand-index{display:block;color:var(--brand-clay)}
.brand-section-heading h2,.brand-table h2,.brand-case h2,.brand-brief h2,.brand-faq h2,.brand-visit h2,.brand-category-story h2,.brand-preparation h2{font-size:clamp(34px,4.4vw,68px);line-height:1.08;letter-spacing:-.045em;margin:0}
.brand-section-heading h2 em,.brand-table h2 em,.brand-case h2 em,.brand-brief h2 em,.brand-faq h2 em,.brand-visit h2 em,.brand-category-story h2 em,.brand-preparation h2 em{font-family:var(--serif);font-weight:400}
.brand-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:26px var(--pad);background:var(--brand-olive);color:#fff;gap:24px}
.brand-proof a{display:flex;gap:14px;align-items:center;font-size:13px;line-height:1.5}
.brand-proof span{font-family:var(--serif);font-style:italic;font-size:27px;opacity:.6}
.brand-hero-kicker{display:flex;align-items:center;gap:12px}.brand-hero-kicker:before{content:'';width:7px;height:7px;border-radius:50%;background:#c3af8b}
.v21-tables-hero h1{font-size:clamp(42px,5.8vw,84px);max-width:650px}
.v21-tables-hero .v2-hero-bottom p{max-width:470px}
.brand-benefits{background:#f5f2eb}
.brand-section-heading{display:grid;grid-template-columns:.55fr 1.5fr 1fr;gap:38px;align-items:start;margin-bottom:65px}
.brand-section-heading>p{font-size:17px;max-width:360px;line-height:1.65;align-self:end;margin:0}
.brand-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--brand-rule)}
.brand-benefit{position:relative;padding:32px 38px 8px 0;min-width:0}
.brand-benefit+.brand-benefit{padding-left:38px;border-left:1px solid var(--brand-rule)}
.brand-line-icon{display:block;font-family:var(--serif);font-size:52px;font-weight:400;color:var(--brand-clay);height:85px}
.brand-benefit .brand-small{display:block;margin:24px 0 14px;color:#787167}
.brand-benefit h3{font-size:clamp(24px,2.2vw,34px);line-height:1.2;letter-spacing:-.03em;margin:0 0 20px;font-weight:500}
.brand-benefit p{font-size:15px;line-height:1.7;max-width:340px;margin:0}
.brand-table{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7vw;align-items:center;background:#dfd5c6;max-width:none;overflow:hidden}
.brand-table-copy>p:not(.eyebrow){max-width:440px;font-size:17px;line-height:1.7}
.brand-table-copy .brand-table-note{font-size:12px!important;color:#675f53;margin:24px 0}
.brand-table-controls{display:grid;grid-template-columns:1fr 1fr;border:1px solid #847a69;margin-top:32px;max-width:450px}
.brand-table-controls[hidden],[data-table-panel][hidden]{display:none!important}
.brand-table-controls button{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 15px;font-size:13px;background:transparent;border:0;cursor:pointer;text-align:left;transition:background .2s,color .2s}
.brand-table-controls button[aria-pressed=true]{background:#252a25;color:#fff}
.brand-table-controls button span{font-family:var(--serif);font-style:italic;opacity:.6}
.brand-table-stage{position:relative;min-width:0}
.brand-table-stage figure{margin:0;background:#f5f2ee;position:relative}
.brand-table-stage img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain!important;padding:28px 12px}
.brand-table-stage figcaption{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.06em;padding:18px 24px;border-top:1px solid var(--brand-rule)}
.brand-table-label{position:absolute;right:-18px;top:32px;writing-mode:vertical-rl;letter-spacing:.18em;font-size:9px}
.brand-case{background:#f4f1ea}.brand-case-title{margin-bottom:55px;max-width:930px}
.brand-case-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:6vw;align-items:start}
.brand-case figure{margin:0}.brand-case-main img{height:auto;aspect-ratio:4/5;object-fit:cover}
.brand-case-main figcaption{margin-top:15px;font-size:11px;letter-spacing:.08em}
.brand-case-detail{padding-top:90px}.brand-case-detail figure{margin-bottom:35px}
.brand-case-detail img{height:auto;aspect-ratio:1/1;object-fit:cover}
.brand-case-detail .brand-small{color:var(--brand-clay)}
.brand-case-detail p{font-size:16px;line-height:1.75}.brand-case-detail .text-link{margin-top:20px}
.brand-brief{background:var(--brand-olive);color:#f8f5ed;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8vw;max-width:none}
.brand-brief h2{max-width:550px}.brand-brief-intro>p:not(.eyebrow){max-width:410px;font-size:16px;line-height:1.75;margin-top:30px;opacity:.85}
.brand-brief-signature{display:flex;align-items:center;gap:24px;margin-top:50px;border-top:1px solid #6f786e;padding-top:24px}
.brand-brief-signature>span{font-family:var(--serif);font-style:italic;font-size:76px;line-height:1;color:#c6b698}
.brand-brief-signature p{font-size:12px;line-height:1.7;letter-spacing:.04em}
.brand-brief-form{min-width:0}.brand-brief-form fieldset{padding:0 0 30px;margin:0 0 30px;border:0;border-bottom:1px solid #727d70;min-width:0}
.brand-brief-form legend{font-size:18px;margin:0 0 20px;letter-spacing:-.01em}
.brand-choice-row{display:flex;flex-wrap:wrap;gap:10px}.brand-choice-row label{position:relative;cursor:pointer}
.brand-choice-row input{position:absolute;opacity:0;width:1px;height:1px}
.brand-choice-row span{display:block;border:1px solid #98a08f;padding:11px 15px;font-size:13px;line-height:1.5;transition:background .2s,color .2s}
.brand-choice-row input:checked+span{background:#ece6da;color:#272d27;border-color:#ece6da}
.brand-choice-row input:focus-visible+span{outline:2px solid #fff;outline-offset:4px}
.brand-brief-summary{font-size:13px;min-height:42px;line-height:1.7;opacity:.85}.brand-brief-form .btn{gap:32px;min-width:270px}
.brand-form-note{font-size:12px;line-height:1.6;max-width:360px;opacity:.7;margin-top:18px}
.brand-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8vw;background:#f7f5ef}
.brand-faq-intro>p:not(.eyebrow){max-width:350px;font-size:16px;line-height:1.7;margin:28px 0}
.brand-faq-list{border-top:1px solid var(--brand-rule);min-width:0}
.brand-faq details{border-bottom:1px solid var(--brand-rule)}
.brand-faq summary{display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:start;gap:18px;list-style:none;cursor:pointer;padding:26px 0}
.brand-faq summary::-webkit-details-marker{display:none}.brand-faq h3{font-size:clamp(18px,1.6vw,23px);font-weight:500;line-height:1.4;margin:0;letter-spacing:-.02em}
.brand-faq-index{font-size:10px;line-height:2.5;color:var(--brand-clay)}.brand-faq-symbol{font-size:25px;font-weight:300;line-height:1;transition:transform .25s}
.brand-faq details[open] .brand-faq-symbol{transform:rotate(45deg)}
.brand-faq-answer{padding:0 42px 26px 46px}.brand-faq-answer p{margin:0;line-height:1.75;font-size:15px;color:#57564e}
.brand-visit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8vw;background:#dfd5c6;max-width:none;align-items:center;position:relative;overflow:hidden}
.brand-visit-word{font-family:var(--serif);font-style:italic;font-size:clamp(80px,14vw,215px);letter-spacing:-.06em;line-height:1;color:#a89c84;transform:rotate(-8deg);border-bottom:1px solid #b4a790;padding-bottom:30px}
.brand-visit-word span{display:block;font-family:var(--sans);font-size:11px;letter-spacing:.32em;text-align:right;padding-right:40px;font-style:normal}
.brand-visit-copy>p:not(.eyebrow){font-size:17px;max-width:520px;line-height:1.7;margin:28px 0}
.brand-visit-actions{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin:30px 0}
.brand-visit address{font-size:13px;line-height:1.9;font-style:normal;color:#635c50}
.brand-category-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7vw;background:#e9e3d8;max-width:none}
.brand-category-story p{font-size:17px;line-height:1.75;margin:0 0 24px}.brand-category-story h2{font-size:clamp(30px,3.5vw,54px)}
.brand-preparation{background:#e9e3d8;display:grid;grid-template-columns:1fr 1fr;gap:7vw;max-width:none}
.brand-preparation ul{padding:0;margin:0;list-style:none;counter-reset:prepare}.brand-preparation li{counter-increment:prepare;display:grid;grid-template-columns:30px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--brand-rule);line-height:1.65}
.brand-preparation li:before{content:'0' counter(prepare);font-size:11px;color:var(--brand-clay)}
.brand-contact-shortcut{position:fixed;bottom:24px;right:24px;z-index:800;background:var(--brand-olive);color:#fff;box-shadow:0 5px 24px #0002;border:1px solid #ffffff55;padding:14px 20px;font-size:12px;letter-spacing:.05em;display:none}
.brand-contact-shortcut.is-visible{display:block}.menu-open .brand-contact-shortcut{display:none}
.v2-custom-copy h2{font-family:var(--sans)}.v2-custom-copy h2 em{font-family:var(--serif);font-weight:400}
.v2-custom-copy{padding-left:5vw;padding-right:5vw}
.brand-breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;margin:0 0 24px;line-height:1.6;opacity:.8}
.brand-breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.brand-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}
.brand-related-grid figure{margin:0;background:#fff;aspect-ratio:4/3;overflow:hidden}
.brand-related-grid img{object-fit:contain;transition:transform .5s}
.brand-related-grid a:hover img{transform:scale(1.035)}
.brand-related-grid h3{font-family:var(--serif);font-weight:400;font-size:clamp(23px,2vw,31px);line-height:1.25;margin:18px 0}
.brand-related h2{font-size:var(--section-title);line-height:1.1;margin:0;letter-spacing:-.03em}
@media(min-width:1101px){.brand-brief-form{padding:12px 0}.v2-process-step{min-height:30vh}}
@media(max-width:1100px){
 .brand-section-heading{grid-template-columns:1fr 1fr}.brand-section-heading .brand-index{grid-column:1/-1}
 .brand-table,.brand-case-grid,.brand-brief,.brand-faq,.brand-visit,.brand-category-story,.brand-preparation{grid-template-columns:minmax(0,1fr);gap:44px}
 .brand-table-copy>p:not(.eyebrow){max-width:600px}.brand-table-stage{max-width:800px;width:100%;margin:auto}
 .brand-case-grid{grid-template-columns:1.2fr .8fr;gap:32px}.brand-case-detail{padding-top:40px}
 .brand-brief h2 br:nth-of-type(2){display:none}.brand-brief-signature{display:none}
 .brand-visit-word{position:absolute;font-size:250px;right:-30px;bottom:30px;opacity:.18;pointer-events:none}.brand-visit-copy{position:relative}
 .brand-benefit{padding-right:24px}.brand-benefit+.brand-benefit{padding-left:24px}
}
@media(max-width:720px){
 .brand-section-heading h2,.brand-table h2,.brand-case h2,.brand-brief h2,.brand-faq h2,.brand-visit h2,.brand-category-story h2,.brand-preparation h2{font-size:clamp(30px,8.5vw,44px);line-height:1.14}
 .brand-proof{grid-template-columns:1fr 1fr;gap:18px 12px;padding-top:24px;padding-bottom:24px}.brand-proof a{font-size:11px;gap:10px}.brand-proof span{font-size:22px}
 .v21-tables-hero h1{font-size:clamp(36px,10vw,54px);max-width:500px}
 .brand-section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:36px}.brand-section-heading>p{font-size:16px;max-width:460px}
 .brand-benefit-grid{grid-template-columns:1fr}.brand-benefit,.brand-benefit+.brand-benefit{padding:26px 0;border-left:0;border-bottom:1px solid var(--brand-rule)}
 .brand-line-icon{float:right;font-size:42px;height:auto}.brand-benefit .brand-small{margin:0 0 20px}.brand-benefit h3{font-size:28px}
 .brand-table{gap:38px}.brand-table-copy>p:not(.eyebrow){font-size:16px}.brand-table-controls button{font-size:12px;padding:14px 10px;gap:6px}.brand-table-stage img{padding:14px 0}
 .brand-table-stage figcaption{padding:15px;font-size:9px}.brand-table-label{display:none}
 .brand-case-grid{grid-template-columns:1fr}.brand-case-main img{aspect-ratio:4/3}.brand-case-detail{padding-top:0;display:grid;grid-template-columns:minmax(0,1fr);gap:0}.brand-case-detail figure{width:70%;margin-left:auto}
 .brand-case-title{margin-bottom:34px}.brand-brief{gap:36px}.brand-brief h2 br{display:none}.brand-brief h2 em{display:block}
 .brand-choice-row{gap:8px}.brand-choice-row span{font-size:12px;padding:10px 12px}.brand-brief-form legend{font-size:17px}.brand-brief-form .btn{min-width:0;width:100%}
 .brand-faq{gap:32px}.brand-faq summary{grid-template-columns:20px minmax(0,1fr) 20px;gap:12px;padding:22px 0}.brand-faq-answer{padding:0 12px 24px 32px}.brand-faq h3{font-size:18px}
 .brand-visit-copy>p:not(.eyebrow),.brand-category-story p{font-size:16px}.brand-visit-actions{align-items:flex-start;flex-direction:column}.brand-visit-word{font-size:170px;bottom:50px}
 .brand-contact-shortcut{right:14px;bottom:max(14px,env(safe-area-inset-bottom));padding:12px 16px;font-size:11px}
 .v2-custom-copy{padding-left:var(--pad);padding-right:var(--pad)}
 .brand-preparation li{padding:20px 0;gap:14px;font-size:15px}
 .brand-related-grid{grid-template-columns:1fr;gap:30px}
}
@media(prefers-reduced-motion:reduce){.brand-table-controls button,.brand-choice-row span,.brand-faq-symbol{transition:none}}
