.calc-section{background:var(--paper-soft)}.calc{margin-top:var(--s-5);max-width:820px;margin-inline:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:clamp(1.25rem,3vw,2rem);position:relative;overflow:hidden}.calc:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--gradient-sun)}.calc__progress{margin-bottom:var(--s-5)}.calc__progress-track{height:6px;border-radius:var(--r-full);background:var(--paper-deep);overflow:hidden}.calc__progress-bar{display:block;height:100%;width:33.33%;background:var(--gradient-clean);border-radius:var(--r-full);transition:width .45s var(--ease-out)}.calc__progress-label{margin-top:var(--s-3);font-size:var(--t-sm);color:var(--ink-mute);font-weight:500}.calc__progress-label strong{color:var(--clay);font-weight:700}.calc__step{border:0;padding:0;margin:0;min-width:0}.calc__legend{display:flex;gap:var(--s-3);font-size:var(--t-lg);color:var(--ink);letter-spacing:-.02em;margin-bottom:var(--s-4);padding:0}.calc__legend,.calc__legend-num{align-items:center;font-weight:700}.calc__legend-num{display:inline-flex;justify-content:center;width:32px;height:32px;flex:none;border-radius:var(--r-full);background:var(--clay-tint);color:var(--clay);font-size:var(--t-sm)}.calc__grid{display:grid;grid-gap:var(--s-4);gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.calc__field{display:flex;flex-direction:column;gap:var(--s-2);min-width:0}.calc__field--wide{margin-bottom:var(--s-4)}.calc__field label{display:flex;align-items:center;gap:var(--s-2);font-size:var(--t-sm);font-weight:600;color:var(--ink-soft)}.calc__unit{color:var(--ink-faint);font-weight:500}.calc__field input[type=number]{width:100%;padding:12px 16px;font-family:var(--sans);font-size:var(--t-base);color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--r-md);min-height:48px;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.calc__field input[type=number]:focus-visible{outline:none;border-color:var(--clay);box-shadow:0 0 0 4px rgba(24,112,176,.14)}.calc__field input[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 4px rgba(176,69,69,.12)}.calc__hint{font-size:var(--t-xs)}.calc__hint--error{color:var(--danger);font-weight:600}.calc__select{position:relative}.calc__select:after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;pointer-events:none;border-right:2px solid var(--ink-mute);border-bottom:2px solid var(--ink-mute);transform:translateY(-70%) rotate(45deg)}.calc__select select{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;padding:12px 40px 12px 16px;font-family:var(--sans);font-size:var(--t-base);color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--r-md);min-height:48px;cursor:pointer;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.calc__select select:hover{border-color:var(--line-strong)}.calc__select select:focus-visible{outline:none;border-color:var(--clay);box-shadow:0 0 0 4px rgba(24,112,176,.14)}@supports ((-webkit-appearance:base-select) or (-moz-appearance:base-select) or (appearance:base-select)){.calc__select select,.calc__select select::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}.calc__select:after{display:none}.calc__select select{padding-right:40px;align-items:center}.calc__select select::picker-icon{color:var(--ink-mute);transition:transform .2s var(--ease)}.calc__select select:open::picker-icon{transform:rotate(180deg)}.calc__select select::picker(select){border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);box-shadow:var(--shadow-lg);padding:var(--s-1h);margin-top:var(--s-1h);overflow:hidden}.calc__select select option{font:inherit;font-family:var(--sans);font-size:var(--t-sm);font-weight:500;color:var(--ink);padding:10px 12px;border-radius:var(--r-sm);display:flex;align-items:center;transition:background .12s var(--ease),color .12s var(--ease)}.calc__select select option::checkmark{color:var(--clay);order:1;margin-left:auto}.calc__select select option:checked{background:var(--clay-deep);color:var(--paper)}.calc__select select option:checked::checkmark{color:var(--paper)}.calc__select select option:focus,.calc__select select option:hover{background:var(--clay);color:var(--paper)}.calc__select select option:focus::checkmark,.calc__select select option:hover::checkmark{color:var(--paper)}}.calc__info{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:none;border-radius:var(--r-full);background:var(--clay-tint);color:var(--clay);font-size:12px;line-height:1;cursor:help;position:relative}.calc__info:focus-visible,.calc__info:hover{background:var(--clay);color:#fff;outline:none}.calc__info:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(4px);width:max-content;max-width:240px;padding:10px 12px;z-index:5;background:var(--trust-deep);color:#fff;font-size:var(--t-xs);font-weight:500;line-height:1.45;text-align:left;border-radius:var(--r-sm);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s var(--ease),transform .2s var(--ease-out)}.calc__info:focus-visible:after,.calc__info:hover:after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.calc__actions{display:flex;align-items:center;gap:var(--s-4);margin-top:var(--s-5);flex-wrap:wrap}.calc__btn-go,.calc__btn-next{margin-left:auto}.calc__btn-prev{display:inline-flex;align-items:center;gap:var(--s-2);background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:var(--t-sm);font-weight:600;color:var(--ink-mute);padding:12px 4px;min-height:48px;transition:color .2s var(--ease)}.calc__btn-prev:hover{color:var(--clay)}.calc__result{text-align:center;outline:none}.calc__result-eyebrow{font-size:var(--t-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:var(--s-4)}.calc__price{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:var(--s-3);margin-bottom:var(--s-2)}.calc__price-val{font-size:clamp(2.25rem,7vw,3.75rem);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--sun);background:var(--gradient-sun);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:.5px rgba(120,86,0,.45);text-shadow:0 1px 2px rgba(120,86,0,.28)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.calc__price-val{color:transparent}}.calc__price-sep{font-size:var(--t-md);font-weight:600;color:var(--ink-mute)}.calc__price-note{font-size:var(--t-sm);color:var(--ink-mute);margin-bottom:var(--s-6)}.calc__yield{display:inline-flex;align-items:center;gap:var(--s-4);text-align:left;margin:0 auto var(--s-6);padding:var(--s-4) var(--s-5);background:var(--sun-tint);border:1px solid var(--sun-soft);border-radius:var(--r-lg)}.calc__yield-icon{font-size:1.75rem;line-height:1;color:var(--sun-deep)}.calc__yield-label{font-size:var(--t-sm);color:var(--ink-soft);font-weight:500}.calc__yield-val{font-size:var(--t-lg);font-weight:800;letter-spacing:-.02em;color:var(--sun-deep);background:var(--sun-text-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:.3px rgba(120,86,0,.35)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.calc__yield-val{color:transparent}}.calc__disclaimer{max-width:52ch;margin:0 auto var(--s-6);font-size:var(--t-xs);line-height:1.55;color:var(--ink-faint)}.calc__result-actions{display:flex;flex-direction:column;align-items:center;gap:var(--s-3)}.calc__result-call{font-size:var(--t-sm);font-weight:600;color:var(--clay)}.calc__result-call:hover{color:var(--clay-deep)}.calc__result-edit{background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:var(--t-sm);color:var(--ink-mute);text-decoration:underline;text-underline-offset:3px;padding:var(--s-2)}.calc__result-edit:hover{color:var(--ink)}@media (max-width:480px){.calc__actions{flex-direction:column-reverse;align-items:stretch}.calc__btn-go,.calc__btn-next{margin-left:0;width:100%}.calc__btn-prev{justify-content:center}.calc__yield{width:100%}}@media (prefers-reduced-motion:reduce){.calc__info:after,.calc__progress-bar{transition:none}}.certs__grid{grid-template-columns:repeat(2,1fr);grid-gap:clamp(1.25rem,2.5vw,2rem)}.cert-card,.certs__grid{display:grid;gap:clamp(1.25rem,2.5vw,2rem)}.cert-card{grid-template-columns:1fr auto;grid-gap:clamp(1.25rem,2.5vw,2rem);align-items:stretch;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,2.4vw,1.9rem);transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease}.cert-card:hover{border-color:var(--line-strong);box-shadow:0 18px 40px -24px rgba(17,26,46,.35);transform:translateY(-2px)}.cert-card__body{display:flex;flex-direction:column;min-width:0}.cert-card__head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2) var(--s-3);margin-bottom:var(--s-3)}.cert-card__issuer{font-family:var(--sans);font-weight:700;font-size:var(--t-sm);letter-spacing:-.01em;color:var(--clay-deep)}.cert-card__issuer--wp{color:var(--sun-deep)}.cert-card__issuer--thermo{color:#c2410c}.certs--single{margin:clamp(1.5rem,4vw,2.5rem) 0}.certs--single .cert-card{max-width:680px}.cert-card__badge{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.01em;padding:3px 10px;border-radius:var(--r-full);background:var(--paper-deep);color:var(--ink-soft);white-space:nowrap}.cert-card__badge--valid{background:color-mix(in srgb,#16a34a 12%,#fff);color:#15803d}.cert-card__title{font-family:var(--sans);font-weight:750;font-size:var(--t-lg);line-height:1.22;letter-spacing:-.02em;color:var(--ink);-webkit-hyphens:auto;hyphens:auto;margin-bottom:var(--s-3)}.cert-card__desc{font-size:var(--t-base);line-height:1.6;color:var(--ink-soft);margin-bottom:var(--s-4)}.cert-card__desc strong{color:var(--ink);font-weight:650}.cert-card__meta{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--s-3) var(--s-4);gap:var(--s-3) var(--s-4);margin-top:auto}.cert-card__meta dt{font-family:var(--sans);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:2px}.cert-card__meta dd{font-family:var(--sans);font-size:var(--t-sm);font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cert-card__topics{list-style:none;margin:auto 0 0;display:grid;grid-gap:7px;gap:7px}.cert-card__topics li{position:relative;padding-left:1.5rem;font-size:var(--t-sm);line-height:1.35;color:var(--ink-soft)}.cert-card__topics li:before{content:"";position:absolute;left:0;top:.28em;width:13px;height:13px;background:var(--sun-deep);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4L19 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4L19 7'/%3E%3C/svg%3E") center/contain no-repeat}.cert-card__doc{position:relative;display:block;width:clamp(150px,19vw,210px);align-self:stretch;min-height:240px;padding:0;cursor:pointer;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);background:linear-gradient(180deg,#fff 0,var(--paper-soft) 100%);box-shadow:0 8px 20px -14px rgba(17,26,46,.4);transition:box-shadow .25s ease,border-color .25s ease}.cert-card__doc:hover{border-color:var(--line-strong);box-shadow:0 14px 30px -16px rgba(17,26,46,.5)}.cert-card__doc img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;padding:10px;transition:transform .35s ease}.cert-card__doc:hover img{transform:scale(1.03)}.cert-card__zoom{position:absolute;inset:auto 8px 8px 8px;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-1h);font-family:var(--sans);font-size:.72rem;font-weight:600;padding:var(--pad-chip);border-radius:var(--r-sm);background:color-mix(in srgb,var(--ink) 86%,transparent);color:#fff;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cert-card__zoom svg{width:14px;height:14px}.cert-card__doc:focus-visible .cert-card__zoom,.cert-card__doc:hover .cert-card__zoom{opacity:1;transform:translateY(0)}.certs__note{display:flex;align-items:center;gap:var(--s-3);margin-top:clamp(1.5rem,3vw,2.25rem);padding:var(--s-4) var(--s-5);background:var(--clay-tint);border-radius:var(--r-md);font-size:var(--t-sm);line-height:1.5;color:var(--ink-soft)}.certs__note svg{width:22px;height:22px;flex:none;color:var(--clay-deep)}.certs__note strong{color:var(--ink);font-weight:650}@media (max-width:720px){.certs__grid{grid-template-columns:1fr}}@media (max-width:480px){.cert-card{grid-template-columns:1fr}.cert-card__doc{width:100%;min-height:0;aspect-ratio:556/791;max-width:320px;margin-inline:auto;align-self:auto}.cert-card__doc img{object-position:center}.cert-card__zoom{opacity:1;transform:none}}.cert-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem);background:color-mix(in srgb,var(--ink) 82%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .2s ease}.cert-modal.is-open{opacity:1}.cert-modal[hidden]{display:none}.cert-modal__stage{position:relative;max-width:min(720px,92vw);max-height:90vh;display:flex;flex-direction:column;gap:var(--s-3);transform:scale(.97) translateY(6px);transition:transform .22s cubic-bezier(.2,.7,.3,1)}.cert-modal.is-open .cert-modal__stage{transform:none}.cert-modal__img{max-width:100%;max-height:calc(90vh - 3rem);width:auto;height:auto;object-fit:contain;border-radius:var(--r-md);background:#fff;box-shadow:0 30px 80px -20px rgba(0,0,0,.6)}.cert-modal__caption{color:rgba(255,255,255,.9);font-size:var(--t-sm);line-height:1.4;text-align:center;text-wrap:balance;max-width:60ch;margin:0 auto}.cert-modal__close{position:absolute;top:clamp(.75rem,3vw,1.5rem);right:clamp(.75rem,3vw,1.5rem);z-index:2;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;cursor:pointer;border-radius:var(--r-full);background:rgba(255,255,255,.14);color:#fff;transition:background .2s ease,transform .2s ease}.cert-modal__close:hover{background:rgba(255,255,255,.28);transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.cert-modal,.cert-modal__stage{transition:none}.cert-modal__close:hover{transform:none}}.certs--inline{padding:0;margin:0;max-width:none;background:none}.certs--inline .certs__grid{margin-top:clamp(1.5rem,3vw,2.5rem);grid-template-columns:1fr}.certs--inline .cert-card{grid-template-columns:minmax(0,1fr) minmax(0,210px)}.gallery{position:relative}.gallery__track{display:flex;gap:clamp(.75rem,1.5vw,1.25rem);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 4px var(--s-3);margin:0;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;-webkit-overflow-scrolling:touch}.gallery__track::-webkit-scrollbar{height:8px}.gallery__track::-webkit-scrollbar-thumb{background:var(--accent);border-radius:999px}.gallery__track::-webkit-scrollbar-track{background:transparent}.gallery__slide{flex:0 0 clamp(260px,32%,380px);scroll-snap-align:start}.gallery__item{display:block;width:100%;padding:0;border-radius:var(--r-lg);overflow:hidden;background:var(--paper-deep);border:1px solid var(--line);box-shadow:var(--shadow-sm);cursor:zoom-in;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),border-color .3s var(--ease)}.gallery__item img{display:block;width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;filter:grayscale(12%) contrast(1.02);transition:filter .6s var(--ease-out),transform 1.4s var(--ease-out)}.gallery__item:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--clay-soft)}.gallery__item:hover img{filter:grayscale(0);transform:scale(1.05)}.gallery__nav{position:absolute;top:calc(50% - var(--s-3));transform:translateY(-50%);z-index:3;width:48px;height:48px;display:grid;place-items:center;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:50%;box-shadow:var(--shadow-lg);transition:background .25s var(--ease),color .25s var(--ease),transform .25s var(--ease-out),opacity .25s var(--ease)}.gallery__nav:hover{background:var(--clay);color:#fff;border-color:var(--clay);transform:translateY(-50%) scale(1.06)}.gallery__nav--prev{left:calc(-1 * var(--s-3))}.gallery__nav--next{right:calc(-1 * var(--s-3))}.gallery__nav[disabled]{opacity:0;pointer-events:none}@media (max-width:720px){.gallery__nav--prev{left:2px}.gallery__nav--next{right:2px}.gallery__slide{flex-basis:78%}}.ref-note{margin-top:var(--s-5);font-size:var(--t-sm);color:var(--ink-mute);text-align:center}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:90;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:clamp(.5rem,2vw,1.5rem);gap:clamp(.5rem,2vw,1.5rem);padding:clamp(1rem,4vw,3rem);background:rgba(5,16,15,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:lb-fade .25s var(--ease)}@keyframes lb-fade{0%{opacity:0}to{opacity:1}}.lightbox__stage{margin:0;grid-column:2;display:flex;flex-direction:column;align-items:center;gap:var(--s-3);min-width:0}.lightbox__img{max-width:100%;max-height:78vh;border-radius:var(--r-lg);box-shadow:var(--shadow-xl);object-fit:contain;background:var(--trust-deep)}.lightbox__caption{font-family:var(--sans);font-size:var(--t-sm);color:rgba(255,255,255,.8);text-align:center;max-width:60ch}.lightbox__close,.lightbox__nav{display:grid;place-items:center;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:50%;transition:background .2s var(--ease),transform .2s var(--ease-out)}.lightbox__nav{width:52px;height:52px}.lightbox__nav--prev{grid-column:1}.lightbox__nav--next{grid-column:3}.lightbox__close:hover,.lightbox__nav:hover{background:var(--clay);transform:scale(1.08)}.lightbox__close{position:absolute;top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem);width:46px;height:46px;z-index:2}.lightbox__count{position:absolute;bottom:clamp(1rem,3vw,2rem);left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:rgba(255,255,255,.65);text-transform:uppercase}@media (max-width:720px){.lightbox{grid-template-columns:1fr}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px}.lightbox__nav--prev{left:var(--s-3);grid-column:auto}.lightbox__nav--next{right:var(--s-3);grid-column:auto}.lightbox__stage{grid-column:auto}.lightbox__img{max-height:70vh}}@media (prefers-reduced-motion:reduce){.gallery__track{scroll-behavior:auto}.lightbox{animation:none}}.portfolio__head{width:100%;padding:clamp(1.5rem,4vw,3rem) var(--edge) clamp(2rem,4vw,3rem)}.portfolio__title{font-family:var(--sans);font-weight:800;font-size:clamp(1.9rem,4.5vw,3.2rem);line-height:1.08;letter-spacing:-.03em;text-wrap:balance;max-width:18ch;margin-top:var(--s-3)}.portfolio__title em{font-style:normal;color:var(--clay)}.portfolio__lead{font-size:var(--t-md);line-height:1.6;color:var(--ink-soft);max-width:60ch;margin-top:var(--s-5)}.portfolio__stats{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6)}.portfolio__stats>div{display:flex;flex-direction:column;gap:2px;padding:var(--s-4) var(--s-5);background:var(--paper-soft);border:1px solid var(--line-soft);border-radius:var(--r-lg)}.portfolio__stats strong{font-family:var(--sans);font-weight:800;font-size:clamp(1.4rem,2.4vw,1.9rem);letter-spacing:-.028em;line-height:1;color:var(--clay-deep)}.portfolio__stats-item--yield strong{color:var(--sun);background:var(--sun-text-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:.35px rgba(120,86,0,.4);text-shadow:0 1px 2px rgba(120,86,0,.22)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.portfolio__stats-item--yield strong{color:transparent}}.portfolio__stats span{font-size:var(--t-xs);color:var(--ink-mute);font-weight:500}.portfolio{width:100%;padding:0 var(--edge) clamp(3rem,6vw,5rem)}.portfolio__grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:clamp(.75rem,1.5vw,1.25rem);gap:clamp(.75rem,1.5vw,1.25rem);margin:0}.portfolio__item{margin:0}.portfolio__btn{position:relative;display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--paper-deep);box-shadow:var(--shadow-sm);cursor:zoom-in;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),border-color .3s var(--ease)}.portfolio__btn img{display:block;width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;filter:grayscale(10%) contrast(1.02);transition:filter .6s var(--ease-out),transform 1.4s var(--ease-out)}.portfolio__btn:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--clay-soft)}.portfolio__btn:hover img{filter:grayscale(0);transform:scale(1.06)}.portfolio__place{position:absolute;left:var(--s-3);bottom:var(--s-3);z-index:2;display:inline-flex;align-items:center;gap:var(--s-1h);font-family:var(--sans);font-size:var(--t-xs);font-weight:600;letter-spacing:-.005em;color:#fff;padding:var(--pad-chip);background:rgba(13,26,31,.72);border-radius:var(--r-full);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.portfolio__place:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--clay-soft)}.portfolio__btn:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(13,26,31,.45));opacity:0;transition:opacity .35s var(--ease);pointer-events:none}.portfolio__btn:hover:after{opacity:1}.portfolio__cta-band{background:var(--gradient-clean-dark);color:var(--paper)}.portfolio__cta-inner{max-width:820px;margin:0 auto;padding:clamp(3rem,7vw,5rem) var(--gutter);text-align:center}.portfolio__cta-inner h2{font-family:var(--sans);font-weight:800;font-size:clamp(1.6rem,3.5vw,2.4rem);letter-spacing:-.025em;color:var(--paper);text-wrap:balance;max-width:22ch;margin:0 auto}.portfolio__cta-inner p{font-size:var(--t-md);line-height:1.6;color:rgba(255,255,255,.85);max-width:52ch;margin:var(--s-4) auto 0}.portfolio__cta-actions{display:flex;flex-wrap:wrap;gap:var(--s-3);justify-content:center;margin-top:var(--s-6)}.portfolio__cta-actions .btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}.portfolio__cta-actions .btn--ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}@media (max-width:1100px){.portfolio__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.portfolio__grid{grid-template-columns:1fr}}.ref-places{margin-top:clamp(1.25rem,2vw,1.75rem);padding-top:clamp(1.25rem,2vw,1.75rem);border-top:1px solid var(--line)}.ref-places__title{font-family:var(--sans);font-weight:700;font-size:var(--t-lg);letter-spacing:-.018em;color:var(--ink);margin-bottom:var(--s-4)}.ref-places__list{display:flex;flex-wrap:wrap;gap:var(--s-2)}.ref-places__list li{font-family:var(--sans);font-size:var(--t-sm);font-weight:600;color:var(--accent-deep);padding:8px 14px;background:var(--paper);border:1px solid var(--accent-soft);border-radius:var(--r-full);transition:border-color .2s var(--ease),background .2s var(--ease),color .2s var(--ease)}.ref-places__list li:hover{border-color:var(--accent);background:var(--accent);color:var(--paper)}.ref-places__marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.ref-places__track{display:flex;width:max-content;gap:var(--s-2);animation:refPlacesRun 32s linear infinite}.ref-places__list--run{flex-wrap:nowrap;width:max-content}.ref-places__list--run li{white-space:nowrap}.ref-places__marquee:hover .ref-places__track{animation-play-state:paused}@keyframes refPlacesRun{0%{transform:translateX(0)}to{transform:translateX(calc(-50% - var(--s-2) / 2))}}@media (prefers-reduced-motion:reduce){.ref-places__track{animation:none}.ref-places__marquee{overflow-x:auto}}.projects__inner{width:100%}.projects__filters{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-bottom:var(--s-6)}.projects__filter{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;padding:var(--pad-pill);font-size:var(--t-sm);font-weight:600;color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-full);cursor:pointer;transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}.projects__filter:hover{border-color:var(--line-strong);color:var(--ink)}.projects__filter[data-active]{background:var(--trust);border-color:var(--trust);color:var(--paper)}.projects__filter-n{font-size:var(--t-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-faint)}.projects__filter[data-active] .projects__filter-n{color:color-mix(in srgb,var(--paper) 65%,transparent)}.projects__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:var(--s-5);gap:var(--s-5);margin:0;padding:0;list-style:none}.projects__cell{display:flex}.projects__cell>*{width:100%}.projects__card{display:flex;flex-direction:column;width:100%;min-height:420px;padding:0;text-align:left;font:inherit;color:inherit;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden;cursor:pointer;transition:box-shadow .3s var(--ease-out),border-color .3s var(--ease),transform .3s var(--ease-out)}div.projects__card{cursor:default}.projects__card:focus-visible,.projects__card:hover{box-shadow:var(--shadow-lg);border-color:var(--line-strong);transform:translateY(-2px)}div.projects__card:hover{transform:none;box-shadow:var(--shadow-sm)}.projects__card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-3);padding:var(--s-5) var(--s-5) 0}.projects__cat{font-size:var(--t-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink)}.projects__count{flex-shrink:0;padding:var(--s-1) var(--s-2);font-size:var(--t-xs);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-soft);background:var(--paper-deep);border-radius:var(--r-sm)}.projects__name{margin:var(--s-3) 0 0;padding:0 var(--s-5);font-size:var(--t-lg);font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--ink);transition:color .2s var(--ease)}.projects__card:hover .projects__name{color:var(--accent-ink)}.projects__place{display:flex;align-items:flex-start;gap:var(--s-1h);margin:var(--s-2) 0 0;padding:0 var(--s-5);font-size:var(--t-sm);line-height:1.4;color:var(--ink-mute)}.projects__pin{flex-shrink:0;margin-top:2px;color:var(--ink-faint)}.projects__note{margin:var(--s-2) 0 0;padding:0 var(--s-5);font-size:var(--t-xs);font-style:italic;color:var(--ink-mute)}.projects__stack{position:relative;height:230px;margin:auto var(--s-5) var(--s-5)}.projects__photo{position:absolute;bottom:0;left:50%;width:78%;aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;background:var(--paper-deep);box-shadow:0 0 0 4px var(--paper),var(--shadow);transition:transform .45s var(--ease-out);transition-delay:.06s}.projects__img,.projects__photo picture{display:block;width:100%;height:100%;object-fit:cover}.projects__photo[data-pos="0"]{transform:translateX(calc(-50% - 14px)) translateY(6px) rotate(-3.5deg);z-index:1}.projects__photo[data-pos="1"]{transform:translateX(-50%) rotate(0deg);z-index:3}.projects__photo[data-pos="2"]{transform:translateX(calc(-50% + 14px)) translateY(6px) rotate(3.5deg);z-index:2}.projects__card:focus-visible .projects__photo[data-pos="0"],.projects__card:hover .projects__photo[data-pos="0"]{transform:translateX(calc(-50% - 26px)) translateY(-4px) rotate(-7deg);transition-delay:0s}.projects__card:focus-visible .projects__photo[data-pos="1"],.projects__card:hover .projects__photo[data-pos="1"]{transform:translateX(-50%) translateY(-12px) rotate(0deg);transition-delay:.06s}.projects__card:focus-visible .projects__photo[data-pos="2"],.projects__card:hover .projects__photo[data-pos="2"]{transform:translateX(calc(-50% + 26px)) translateY(-4px) rotate(7deg);transition-delay:.12s}.projects__more{bottom:var(--s-2);padding:var(--s-1) var(--s-3);font-size:var(--t-xs);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--paper);background:color-mix(in srgb,var(--trust) 85%,transparent);border-radius:var(--r-full);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.projects__arrow,.projects__more{position:absolute;right:var(--s-2);z-index:4}.projects__arrow{top:var(--s-2);display:grid;place-items:center;width:36px;height:36px;color:var(--ink);background:var(--paper);border-radius:50%;box-shadow:var(--shadow);opacity:0;transition:opacity .2s var(--ease),background .2s var(--ease),color .2s var(--ease)}.projects__card:focus-visible .projects__arrow,.projects__card:hover .projects__arrow{opacity:1}.projects__empty{position:absolute;inset:0;display:grid;place-items:center;font-size:var(--t-sm);color:var(--ink-mute);background:var(--accent-grad-soft);border:1px dashed var(--line-strong);border-radius:var(--r-md)}.projects__all{display:flex;justify-content:center;margin-top:var(--s-6)}.projects__lb{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;background:color-mix(in srgb,var(--trust-deep) 96%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:projects-lb-in .2s var(--ease-out)}@keyframes projects-lb-in{0%{opacity:0}to{opacity:1}}.projects__lb-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-5);flex-shrink:0;padding:var(--s-4) var(--s-5);color:var(--paper);border-bottom:1px solid color-mix(in srgb,var(--paper) 12%,transparent);background:var(--trust-deep)}.projects__lb-cat{margin:0 0 var(--s-2);font-size:var(--t-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-soft)}.projects__lb-title{margin:0;font-size:var(--t-lg);font-weight:700;line-height:1.2;color:var(--paper)}.projects__lb-place{margin:var(--s-2) 0 0;font-size:var(--t-sm);color:color-mix(in srgb,var(--paper) 72%,var(--trust-deep))}.projects__lb-head-right{display:flex;align-items:center;gap:var(--s-2);flex-shrink:0}.projects__lb-num{padding:var(--s-2) var(--s-3);font-size:var(--t-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--paper) 65%,var(--trust-deep));border:1px solid color-mix(in srgb,var(--paper) 10%,transparent);border-radius:var(--r-full)}.projects__lb-close{flex-shrink:0;display:grid;place-items:center;width:44px;height:44px;color:var(--paper);background:color-mix(in srgb,var(--paper) 10%,transparent);border:1px solid color-mix(in srgb,var(--paper) 18%,transparent);border-radius:50%;cursor:pointer;transition:background .2s var(--ease)}.projects__lb-close:hover{background:color-mix(in srgb,var(--paper) 22%,transparent)}.projects__lb-stage{flex:1 1;display:flex;align-items:stretch;gap:6px;min-height:0;max-height:680px;margin:auto 0;padding:var(--s-5) var(--s-6)}.projects__lb-panel{position:relative;flex:1 1;min-width:64px;padding:0;overflow:hidden;border:2px solid color-mix(in srgb,var(--paper) 6%,transparent);border-radius:var(--r-md);background-color:#111;background-position:50%;background-size:auto 115%;background-repeat:no-repeat;cursor:pointer;box-shadow:0 8px 20px -8px rgba(0,0,0,.4);opacity:0;transform:translateX(-40px);transition:flex-grow .7s var(--ease),background-size .7s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease),opacity .5s var(--ease),transform .5s var(--ease);will-change:flex-grow,background-size}.projects__lb-panel[data-in]{opacity:1;transform:translateX(0)}.projects__lb-panel[data-active]{flex-grow:8;min-width:0;background-size:cover;border-color:color-mix(in srgb,var(--paper) 85%,transparent);box-shadow:0 24px 60px -16px rgba(0,0,0,.6)}.projects__lb-panel:focus-visible{outline:2px solid var(--accent-soft);outline-offset:2px}.projects__lb-panel-shade{position:absolute;inset-inline:0;bottom:0;height:128px;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent);opacity:.7;transition:opacity .5s var(--ease)}.projects__lb-panel[data-active] .projects__lb-panel-shade{opacity:1}.projects__lb-panel-label{position:absolute;inset-inline:0;bottom:0;display:flex;align-items:flex-end;gap:var(--s-3);padding:var(--s-5);pointer-events:none}.projects__lb-panel-num{flex-shrink:0;display:grid;place-items:center;width:44px;height:44px;font-size:var(--t-sm);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--paper);background:rgba(20,20,22,.8);border:1.5px solid color-mix(in srgb,var(--paper) 15%,transparent);border-radius:50%;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .4s var(--ease)}.projects__lb-panel[data-active] .projects__lb-panel-num{background:var(--accent-grad)}.projects__lb-panel-text{min-width:0;overflow:hidden;color:var(--paper);white-space:nowrap}.projects__lb-panel-sub,.projects__lb-panel-title{display:block;opacity:0;transform:translateX(20px);transition:opacity .5s var(--ease),transform .6s var(--ease)}.projects__lb-panel-title{font-size:.95rem;font-weight:600;line-height:1.2}.projects__lb-panel-sub{margin-top:2px;font-size:var(--t-xs);color:color-mix(in srgb,var(--paper) 75%,var(--trust-deep));transition-delay:.18s}.projects__lb-panel[data-active] .projects__lb-panel-sub,.projects__lb-panel[data-active] .projects__lb-panel-title{opacity:1;transform:translateX(0)}.projects__lb-panel[data-active] .projects__lb-panel-title{transition-delay:.1s}.projects__lb-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);flex-shrink:0;padding:var(--s-4) var(--s-6);border-top:1px solid color-mix(in srgb,var(--paper) 10%,transparent)}.projects__lb-hint{margin:0;font-size:var(--t-sm);color:color-mix(in srgb,var(--paper) 60%,var(--trust-deep))}.projects__lb-num--foot{display:none}.projects__lb-arrows{display:flex;gap:var(--s-2)}.projects__lb-nav{display:grid;place-items:center;width:44px;height:44px;color:var(--paper);background:none;border:1px solid color-mix(in srgb,var(--paper) 20%,transparent);border-radius:50%;cursor:pointer;transition:background .2s var(--ease)}.projects__lb-nav:hover{background:color-mix(in srgb,var(--paper) 10%,transparent)}.projects__lb-mobile{flex:1 1;display:flex;flex-direction:column;min-height:0;background:var(--trust-deep)}.projects__lb-swipe{flex:1 1;display:flex;min-height:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.projects__lb-swipe::-webkit-scrollbar{display:none}.projects__lb-slide{flex:0 0 100%;scroll-snap-align:center;scroll-snap-stop:always;display:grid;place-items:center;min-width:0;margin:0;padding:0 var(--s-3)}.projects__lb-slide-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:var(--r-md);box-shadow:0 18px 40px -14px rgba(0,0,0,.55)}.projects__lb-slide picture{display:block;max-width:100%;max-height:100%;line-height:0}.projects__lb-dots{flex-shrink:0;display:flex;justify-content:center;flex-wrap:wrap;gap:6px;padding:var(--s-3) var(--s-4) 0}.projects__lb-dot{width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--paper) 28%,transparent);transition:background .3s var(--ease),width .3s var(--ease)}.projects__lb-dot[data-active]{width:18px;border-radius:var(--r-full);background:var(--paper)}.projects__lb-thumbs{flex-shrink:0;display:flex;gap:var(--s-2);padding:var(--s-3) var(--s-4);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.projects__lb-thumbs::-webkit-scrollbar{display:none}.projects__lb-thumb{flex:0 0 auto;width:54px;height:54px;padding:0;border:2px solid transparent;border-radius:var(--r-sm);background-color:#111;background-position:50%;background-size:cover;background-repeat:no-repeat;opacity:.5;cursor:pointer;transition:opacity .3s var(--ease),border-color .3s var(--ease)}.projects__lb-thumb[data-active]{opacity:1;border-color:var(--paper)}.projects__lb-thumb:focus-visible{outline:2px solid var(--accent-soft);outline-offset:2px}@media (max-width:720px){.projects__grid{grid-template-columns:1fr}.projects__arrow{opacity:1}.projects__lb-head{padding:var(--s-3) var(--s-4)}.projects__lb-title{font-size:var(--t-md)}.projects__lb-head .projects__lb-num,.projects__lb-place{display:none}.projects__lb-num--foot{display:block}.projects__lb-hint{display:none}.projects__lb-foot{padding:var(--s-3) var(--s-4);padding-bottom:max(var(--s-3),env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.projects__arrow,.projects__card,.projects__photo{transition:none}.projects__card:focus-visible .projects__photo,.projects__card:hover .projects__photo{transform:none}.projects__card:hover .projects__photo[data-pos="0"]{transform:translateX(calc(-50% - 14px)) translateY(6px) rotate(-3.5deg)}.projects__card:hover .projects__photo[data-pos="1"]{transform:translateX(-50%)}.projects__card:hover .projects__photo[data-pos="2"]{transform:translateX(calc(-50% + 14px)) translateY(6px) rotate(3.5deg)}.projects__lb{animation:none}.projects__lb-panel,.projects__lb-panel-num,.projects__lb-panel-shade,.projects__lb-panel-sub,.projects__lb-panel-title{transition:none}.projects__lb-panel{opacity:1;transform:none}.projects__lb-swipe{scroll-behavior:auto}.projects__lb-dot,.projects__lb-thumb{transition:none}}.pull-wrap{position:relative;isolation:isolate;color:var(--paper);overflow:hidden;background:var(--ink)}.pull-wrap__bg{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;filter:grayscale(80%) brightness(.55) contrast(1.05);transform:scale(1.03);animation:kenburns 28s linear infinite alternate}@keyframes kenburns{0%{transform:scale(1.03) translate(0)}to{transform:scale(1.08) translate(-1.5%,-1%)}}.pull-wrap:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,rgba(15,23,42,.78) 0,rgba(15,23,42,.5) 50%,color-mix(in srgb,var(--accent) 35%,transparent) 100%)}.pull-wrap__inner{max-width:880px;margin:0 auto;padding:clamp(4.5rem,11vw,9rem) var(--gutter);position:relative;text-align:center}.pull-wrap__mark{position:absolute;top:clamp(2rem,6vw,4rem);left:50%;transform:translateX(-50%);font-family:var(--sans);font-style:normal;font-weight:800;font-size:clamp(8rem,18vw,18rem);line-height:.7;color:var(--accent);opacity:.12;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;z-index:0}.pull-wrap__eyebrow{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--sans);font-size:var(--t-xs);font-weight:600;letter-spacing:-.005em;text-transform:none;color:#fff;margin-bottom:var(--s-5);padding:var(--pad-chip);background:rgba(168,137,107,.25);border:1px solid rgba(197,169,134,.4);border-radius:var(--r-full)}.pull-wrap__eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-soft)}.pull-wrap__body{position:relative;z-index:1;font-family:var(--sans);font-weight:600;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.3;letter-spacing:-.025em;text-wrap:balance;max-width:26ch;margin:0 auto;color:#fff}.pull-wrap__body em{font-style:normal;color:var(--accent-soft);font-weight:700;white-space:nowrap}.pull-wrap__cite{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--s-1h);margin-top:var(--s-7);padding-top:var(--s-5)}.pull-wrap__cite:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:40px;height:2px;border-radius:1px;background:var(--accent-soft)}.pull-wrap__sign{font-family:var(--sans);font-style:normal;font-weight:700;font-size:var(--t-md);letter-spacing:-.01em;color:var(--paper)}.pull-wrap__sign--script{font-family:var(--script);font-weight:600;font-size:1.875rem;line-height:1;letter-spacing:.01em}.pull-wrap__role{font-family:var(--sans);font-size:var(--t-xs);font-weight:500;text-transform:none;letter-spacing:-.005em;color:rgba(255,255,255,.6)}.pull-wrap__trust{position:relative;z-index:1;display:inline-flex;flex-wrap:wrap;justify-content:center;gap:var(--s-2);margin-top:var(--s-6);padding:0;background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}.pull-wrap__trust li{display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--sans);font-size:var(--t-xs);font-weight:500;letter-spacing:-.005em;text-transform:none;color:rgba(255,255,255,.9);padding:8px 14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-full);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pull-wrap__trust li span{display:inline-grid;place-items:center;width:18px;height:18px;background:var(--accent);color:#fff;border-radius:50%;font-size:.65rem;line-height:1;font-weight:700}.pull-wrap__cta{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--s-2);margin-top:var(--s-6);padding:14px 24px;background:var(--paper);color:var(--ink);border-radius:var(--r-md);font-family:var(--sans);font-weight:600;font-size:var(--t-sm);letter-spacing:-.005em;transition:background .25s var(--ease),color .25s var(--ease),transform .25s var(--ease-out),box-shadow .25s var(--ease);touch-action:manipulation;box-shadow:var(--shadow);min-height:48px}.pull-wrap__cta:hover{background:var(--accent);color:var(--paper);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.pull-wrap__cta span{transition:transform .35s var(--ease-out);display:inline-block}.pull-wrap__cta:hover span{transform:translateX(4px)}@media (max-width:720px){.pull-wrap__inner{padding:clamp(3.5rem,12vw,5rem) var(--gutter)}.pull-wrap__mark{font-size:clamp(8rem,28vw,14rem);top:clamp(1.5rem,5vw,3rem);opacity:.12}.pull-wrap__body{font-size:clamp(1.3rem,6vw,1.8rem);max-width:18ch}.pull-wrap__trust{padding:var(--s-3) var(--s-4);gap:var(--s-3);border-radius:16px}.pull-wrap__eyebrow,.pull-wrap__trust li{font-size:.75rem}.pull-wrap__cta{font-size:.88rem;padding:.85rem 1.4rem}}.reviews__score{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:2px}.review-card__stars,.reviews__stars{color:var(--star);letter-spacing:2px;font-size:1.1rem}.reviews__score-text{font-size:var(--t-sm);color:var(--ink-soft)}.reviews__score-text strong{color:var(--ink);font-weight:700}.reviews__score-head{display:flex;align-items:center;gap:var(--s-2)}.google-mark{display:block;flex-shrink:0}.reviews__score-source{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:2px;transition:color .2s var(--ease-out),-webkit-text-decoration-color .2s var(--ease-out);transition:text-decoration-color .2s var(--ease-out),color .2s var(--ease-out);transition:text-decoration-color .2s var(--ease-out),color .2s var(--ease-out),-webkit-text-decoration-color .2s var(--ease-out)}.reviews__score-source:focus-visible,.reviews__score-source:hover{color:var(--ink);-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.reviews__stars--rated{position:relative;display:inline-block;align-self:start;line-height:1}.reviews__stars-bg{color:var(--line-strong)}.reviews__stars-fill{position:absolute;inset:0 auto 0 0;overflow:hidden;white-space:nowrap;color:var(--star)}.reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:clamp(1rem,2vw,1.5rem);gap:clamp(1rem,2vw,1.5rem)}.review-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,2.5vw,1.75rem);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--s-3);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out)}.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.review-card blockquote{font-size:var(--t-base);color:var(--ink-soft);line-height:1.55;flex:1 1}.review-card__who{display:flex;align-items:center;gap:var(--s-3);margin-top:auto}.review-card__avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;background:var(--accent-grad);color:#fff;font-weight:700;font-size:.8rem}.review-card__who span:last-child{display:flex;flex-direction:column;line-height:1.3}.review-card__who strong{font-weight:700;font-size:var(--t-sm)}.review-card__who em{font-style:normal;font-size:var(--t-xs);color:var(--ink-mute)}.reviews__scorecard{margin-top:calc(clamp(2.5rem, 5vw, 4.5rem) * -.72);margin-bottom:var(--s-7)}@media (max-width:720px){.reviews__scorecard{margin-top:calc(clamp(1.5rem, 5vw, 2.5rem) * -.4)}}.reviews__score--big{display:inline-flex;flex-direction:row;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.reviews__score-value{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--ink)}.reviews__score-meta{display:flex;flex-direction:column;gap:2px}.reviews__score--big .reviews__stars{font-size:.9rem;letter-spacing:1px}.reviews__score--big .reviews__score-text{font-size:var(--t-xs)}.reviews__grid--spotlight blockquote:before{content:"„"}.reviews__grid--spotlight blockquote:after{content:"“"}.reviews__grid--spotlight{grid-template-columns:1fr 1fr;align-items:stretch}.reviews__grid--spotlight>.review-card--lead{grid-column:1;grid-row:1/span var(--lead-span,2);background:var(--paper-soft);border-color:transparent;box-shadow:none;justify-content:space-between;padding:clamp(1.75rem,3vw,2.5rem)}.reviews__grid--spotlight>.review-card:not(.review-card--lead){grid-column:2}.reviews__grid--spotlight>.review-card--lead blockquote{font-size:clamp(1.125rem,1.9vw,1.5rem);font-weight:600;line-height:1.4;letter-spacing:-.02em;color:var(--ink);flex:0 1 auto}.reviews__grid--spotlight>.review-card--lead .review-card__stars{font-size:1.35rem;letter-spacing:3px;margin-bottom:calc(var(--s-3) * -1)}.reviews__grid--spotlight>.review-card--lead .review-card__who{margin-top:var(--s-6)}.reviews__grid--spotlight>.review-card--lead .review-card__avatar{width:46px;height:46px;font-size:.875rem}.reviews__grid--spotlight>.review-card--lead:hover{transform:none;box-shadow:none}.reviews__dots{display:none}.reviews__dots--spotlight{display:flex;gap:var(--s-2);margin-top:var(--s-5)}.reviews__dot,.reviews__dots--spotlight{justify-content:center;align-items:center}.reviews__dot{width:44px;height:44px;padding:0;border:0;background:none;cursor:pointer;position:relative;display:inline-flex;margin:-18px}.reviews__dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--line-strong);opacity:.45;transition:opacity .3s var(--ease-out),background .3s var(--ease-out),width .3s var(--ease-out)}.reviews__dot.is-active:before{width:22px;border-radius:999px;background:var(--accent);opacity:1}.reviews__dot:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:1100px){.reviews__grid{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:6px 4px var(--s-3);margin-inline:-4px;scrollbar-width:none}.reviews__grid::-webkit-scrollbar{display:none}.reviews__grid>.review-card{flex:0 0 min(88%,420px);scroll-snap-align:start}.review-card:hover{transform:none;box-shadow:var(--shadow-sm)}.reviews__dots{display:flex;justify-content:center;align-items:center;gap:var(--s-2);margin-top:var(--s-3)}.reviews__grid--spotlight>.review-card--lead{background:var(--paper);border-color:var(--line);box-shadow:var(--shadow-sm);padding:clamp(1.25rem,2.5vw,1.75rem)}.reviews__grid--spotlight>.review-card--lead,.reviews__grid--spotlight>.review-card:not(.review-card--lead){grid-column:auto;grid-row:auto}.reviews__grid--spotlight>.review-card--lead blockquote{font-size:var(--t-base);font-weight:400;line-height:1.55;letter-spacing:normal;color:var(--ink-soft)}.reviews__grid--spotlight>.review-card--lead .review-card__stars{font-size:1.1rem;letter-spacing:2px;margin-bottom:0}.reviews__grid--spotlight>.review-card--lead .review-card__who{margin-top:auto}.reviews__grid--spotlight>.review-card--lead .review-card__avatar{width:40px;height:40px;font-size:.8rem}}@media (max-width:720px){.reviews__score{align-items:flex-start;margin-top:var(--s-3)}}.faq__layout{display:grid;grid-template-columns:1fr 1.5fr;grid-gap:clamp(2rem,6vw,5rem);gap:clamp(2rem,6vw,5rem);align-items:flex-start}.faq__head .section__title{font-size:clamp(2.2rem,4.5vw,3.6rem)}@media (min-width:1101px){.faq__head{position:-webkit-sticky;position:sticky;top:calc(70px + var(--s-5));align-self:start}}.faq__list{display:flex;flex-direction:column;gap:var(--s-3)}.faq details{background:var(--paper-soft);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5);transition:border-color .25s var(--ease),background .25s var(--ease)}.faq details[open]{background:var(--paper);border-color:var(--accent-soft)}.faq details>summary{display:flex}.faq summary::marker{content:"";font-size:0;color:transparent}details>summary{list-style:none}details>summary::marker{content:""}details>summary::-webkit-details-marker{display:none}.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;-webkit-appearance:none;-moz-appearance:none;appearance:none;gap:var(--s-4);font-family:var(--sans);font-weight:600;font-size:var(--t-md);color:var(--ink);letter-spacing:-.018em;transition:color .25s var(--ease)}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--accent-deep)}.faq__plus{flex-shrink:0;width:32px;height:32px;background:var(--accent-tint);border-radius:50%;position:relative;transition:background .25s var(--ease)}.faq__plus:after,.faq__plus:before{content:"";position:absolute;background:var(--accent-deep);top:50%;left:50%;border-radius:1px;transition:transform .3s var(--ease),background .3s var(--ease)}.faq__plus:before{width:14px;height:2.5px;transform:translate(-50%,-50%)}.faq__plus:after{width:2.5px;height:14px;transform:translate(-50%,-50%)}.faq details[open] summary{color:var(--accent-deep)}.faq details[open] .faq__plus{background:var(--accent)}.faq details[open] .faq__plus:after,.faq details[open] .faq__plus:before{background:#fff}.faq details[open] .faq__plus:after{transform:translate(-50%,-50%) rotate(90deg)}.faq details p{padding-top:var(--s-3);font-size:var(--t-base);line-height:1.65;color:var(--ink-soft);max-width:60ch}@media (max-width:1100px){.faq__layout{grid-template-columns:1fr}}@media (max-width:720px){.faq summary{font-size:1.05rem;gap:var(--s-3)}.faq__plus{width:28px;height:28px}.faq__plus:before{width:13px;height:2.5px}.faq__plus:after{width:2.5px;height:13px}.faq details p{font-size:var(--t-base)}.faq details{padding:var(--s-3)}.faq__list{gap:var(--s-2)}.faq details p{padding-top:var(--s-2)}}