/* Approved restoration: reference V2.26 / contacts V1 + mobile V2.6 illustrations. */
.g-form-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden;opacity:0}
.g26-submit:disabled{cursor:wait;opacity:.7}
.g26-submit[data-saved]:disabled{cursor:default;opacity:1}
.g26-form-status{font-size:14px;line-height:1.5}
.g26-form-status[data-error="true"]{color:#ffd37a}
.g26-mobile-icon{display:none}
.g-anchor{position:absolute;top:0;left:0;scroll-margin-top:24px}
.g26-section .g26-wrap>div,.g26-step>div,.g26-product-copy>*,.g26-tariff{min-width:0}
.g26-journey-head h2,.g26-tariffs-head h2,.g26-protection h2,.g26-contract h2,.g26-connect h2{overflow-wrap:normal}
.g-contact-header:focus-visible,.g-contact-actions a:focus-visible,.g-contact-channels a:focus-visible,.g26-submit:focus-visible{outline:2px solid #75c6ff;outline-offset:4px}
@media(max-width:699px){
 .g26-journey-list{padding:22px 15px;border:1px solid rgba(114,199,255,.17);border-radius:26px;background:linear-gradient(145deg,rgba(8,35,65,.64),rgba(4,20,41,.82));box-shadow:0 20px 55px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.05)}
 .g26-journey-list:before{left:42px;top:48px;bottom:74px;width:2px;background:linear-gradient(180deg,#35aaff,rgba(53,170,255,.32) 70%,#ffc85e)}
 .g26-step{grid-template-columns:56px minmax(0,1fr);gap:0 12px;padding-bottom:28px}
 .g26-step-no{width:56px;height:56px;background:transparent;border:0;border-radius:0}
 .g26-step-no>span{display:none}
 .g26-mobile-icon{display:block;width:56px;height:56px;object-fit:contain;filter:drop-shadow(0 0 13px rgba(46,167,255,.24))}
 .g26-step.is-result .g26-step-no{background:transparent;border:0}
 .g26-step.is-result .g26-mobile-icon{filter:drop-shadow(0 0 16px rgba(255,187,55,.4))}
 .g26-step h3{margin-top:2px;font-size:22px}
 .g26-step p{font-size:15px;line-height:1.55}
 .g26-step .g26-ui{margin-top:13px;grid-column:2;padding:14px 13px;min-height:86px}
 .g26-ui small{font-size:14px;line-height:1.4;letter-spacing:.03em}
 .g26-ui span{font-size:14px;line-height:1.45}
 .g26-ui strong{font-size:16px;line-height:1.4}
 .g26-journey:after{height:48%;opacity:.5}
 .g26-tariff-top{flex-wrap:wrap}
 .g-contact-card{padding:20px 15px}
}
@media(min-width:700px) and (max-width:999px){
 .g26-product-copy{grid-template-columns:minmax(0,1fr) minmax(0,.72fr)}
 .g26-protection-grid,.g26-contract-grid,.g26-connect-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
 .g26-protection h2,.g26-contract h2,.g26-connect h2{font-size:clamp(40px,5.8vw,58px)}
 .g26-step{grid-template-columns:58px minmax(0,.85fr) minmax(0,1fr)}
 .g26-tariff{padding:25px 22px}.g26-tariff-top{flex-wrap:wrap}
}
@media(min-width:900px) and (max-width:1099px){
 .hero .content{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:32px}
 .hero h1 .promise{font-size:clamp(22px,2.8vw,31px)}.hero h1 .pay{font-size:clamp(54px,6.4vw,72px)}
 .hero .funnel{height:auto;width:min(100%,480px);max-width:100%;bottom:0}
 .hero .btn{font-size:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* R2: original individual curves, with no cropped wave at section joins. */
.g26-section:before{background:url('../patterns/GRANI_SOFT_LINES_R2.svg') center/cover no-repeat;opacity:1}
.g-contact-icon{display:block;width:20px;height:20px;flex:0 0 20px;object-fit:contain}
.g-contact-card-heading{display:flex;align-items:center;gap:10px;max-width:100%;min-width:0}
.g-contact-card-heading .g-contact-icon{width:26px;height:26px;flex-basis:26px}
.g-contact-card-heading b{min-width:0}
.g-contact-text,.g-contact-channels a,.g26-submit{gap:8px}
.g-contact-sticky a{gap:8px;padding:10px 12px}
.g-contact-sticky .g-contact-icon{width:18px;height:18px;flex-basis:18px}
@media(max-width:699px){.g-contact-card-heading{gap:8px}.g-contact-card-heading .g-contact-icon{width:22px;height:22px;flex-basis:22px}}
@media(max-width:600px){.g-contact-channels{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:374px){.g-contact-sticky a{font-size:14px}}
@media(min-width:700px) and (max-width:999px){.g-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
