/* The existing BRI theme reserves space for its fixed header. This page uses
   its own in-flow navigation, so retire that reservation only on these pages. */
body:has(.ai-site) {
    padding-top: 0 !important;
    background: #f6f5f0;
}
@font-face {
    font-family:Albassem;
    src:url('../fonts/OverusedGrotesk-Roman.woff2') format('woff2');
    font-display:swap;
    font-weight:400
}
@font-face {
    font-family:Albassem;
    src:url('../fonts/OverusedGrotesk-Bold.woff2') format('woff2');
    font-display:swap;
    font-weight:700
}
@font-face {
    font-family:AlbassemArabic;
    src:url('../fonts/cairo-arabic-400-normal.woff2') format('woff2');
    font-display:swap;
    font-weight:400
}
@font-face {
    font-family:AlbassemArabic;
    src:url('../fonts/cairo-arabic-700-normal.woff2') format('woff2');
    font-display:swap;
    font-weight:700
}
.ai-site {
    --ai-paper:#f6f5f0;
    --ai-ink:#252c28;
    --ai-muted:#71756c;
    --ai-line:#dedfd6;
    --ai-orange:#ef7545;
    background:var(--ai-paper);
    color:var(--ai-ink);
    font-family:Albassem,AlbassemArabic,sans-serif;
    font-size:16px;
    line-height:1.5;
    text-align:start;
    isolation:isolate
}
.ai-site[dir=rtl] {
    font-family:AlbassemArabic,Albassem,sans-serif
}
.ai-site * {
    box-sizing:border-box
}
.ai-site h1,.ai-site h2,.ai-site h3,.ai-site p {
    margin:0;
    color:inherit;
    font-family:inherit
}
.ai-site a {
    color:inherit;
    text-decoration:none
}
.ai-site button,.ai-site input,.ai-site select,.ai-site textarea {
    font:inherit
}
.ai-site button,.ai-site a,.ai-site input,.ai-site select,.ai-site textarea {
    outline-offset:5px
}
.ai-site :focus-visible {
    outline:2px solid #b84c22
}
.ai-site a,.ai-site button {
    touch-action:manipulation
}
.ai-site section[id] {
    scroll-margin-top:20px
}
.ai-skip {
    position:fixed;
    top:-100px;
    left:12px;
    padding:12px;
    background:white;
    z-index:99
}
.ai-skip:focus {
    top:12px
}
.ai-announcement {
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    background:#28302b;
    color:#e1e7dc;
    font-size:11px;
    letter-spacing:.02em;
    position:relative;
    padding:0 20px
}
.ai-dot {
    display:inline-block;
    width:6px;
    height:6px;
    background:var(--ai-orange);
    border-radius:50%;
    flex-shrink:0
}
.ai-announcement-end {
    position:absolute;
    inset-inline-end:4.5%;
    font-size:10px;
    letter-spacing:.1em
}
.ai-nav {
    padding:23px 4.5%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    border-bottom:1px solid var(--ai-line)
}
.ai-brand {
    display:flex;
    align-items:center;
    gap:12px;
    direction:ltr;
    font-weight:700;
    font-size:20px;
    letter-spacing:.015em;
    line-height:1.05
}
.ai-brand small {
    display:block;
    font-size:10px;
    letter-spacing:.36em;
    margin-top:5px
}
.ai-brand-symbol {
    font-size:44px;
    font-weight:700;
    position:relative;
    line-height:1;
    color:var(--ai-orange);
    letter-spacing:-11px;
    padding-right:12px
}
.ai-brand-symbol span {
    color:var(--ai-ink);
    font-size:40px
}
.ai-links,.ai-nav-actions {
    display:flex;
    align-items:center;
    gap:31px
}
.ai-links a,.ai-language {
    font-size:14px
}
.ai-links a:hover,.ai-text-link:hover {
    color:#bc512b
}
.ai-nav-actions {
    gap:25px
}
.ai-button {
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:30px;
    padding:17px 24px;
    background:var(--ai-orange);
    border:1px solid transparent;
    color:#202821!important;
    font-weight:700;
    font-size:15px;
    line-height:1.3;
    cursor:pointer;
    transition:background .2s,transform .2s
}
.ai-button:hover {
    background:#fa8757;
    transform:translateY(-2px)
}
.ai-button:disabled {
    opacity:.6;
    cursor:wait;
    transform:none
}
.ai-button span {
    font-size:21px
}
.ai-button-small {
    padding:12px 18px;
    font-size:13px;
    gap:23px
}
.ai-hero {
    display:grid;
    grid-template-columns:1fr 1fr;
    min-height:605px
}
.ai-hero-copy {
    padding:76px 7% 55px 9%;
    display:flex;
    flex-direction:column;
    align-items:flex-start
}
.ai-site[dir=rtl] .ai-hero-copy {
    padding:76px 9% 55px 7%
}
.ai-eyebrow {
    font-size:11px!important;
    font-weight:700;
    letter-spacing:.12em;
    display:flex;
    align-items:center;
    gap:10px;
    text-transform:uppercase
}
.ai-eyebrow>span {
    width:20px;
    height:2px;
    background:var(--ai-orange)
}
.ai-hero h1 {
    font-size:clamp(48px,5.3vw,82px);
    line-height:1.02;
    font-weight:700;
    letter-spacing:-.055em;
    margin-top:28px
}
.ai-hero h1 em {
    font-style:normal;
    color:#787f70
}
.ai-site[dir=rtl] .ai-hero h1 {
    letter-spacing:0;
    font-size:clamp(44px,4.5vw,67px);
    line-height:1.5
}
.ai-hero-intro {
    font-size:17px;
    line-height:1.65;
    max-width:410px;
    color:#666e62!important;
    margin-top:25px!important
}
.ai-hero-actions {
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:30px;
    flex-wrap:wrap
}
.ai-text-link {
    font-size:13px;
    font-weight:700;
    line-height:1.5
}
.ai-hero-note {
    display:flex;
    align-items:center;
    gap:9px;
    font-size:11px;
    color:var(--ai-muted);
    margin-top:30px
}
.ai-mini-file {
    border:1px solid #c6cbbf;
    width:20px;
    height:24px;
    display:grid;
    place-items:center
}
.ai-hero-art {
    background:#27322c;
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:560px
}
.ai-art-grid {
    position:absolute;
    inset:0;
    background-image:linear-gradient(#9aab9210 1px,transparent 1px),linear-gradient(90deg,#9aab9210 1px,transparent 1px);
    background-size:46px 46px;
    mask-image:radial-gradient(ellipse,#000,transparent 85%)
}
.ai-hero-art>img {
    width:100%;
    height:auto;
    position:relative;
    max-width:780px;
    animation:ai-rise 1.3s ease-out both
}
.ai-art-label {
    position:absolute;
    inset-inline-start:30px;
    top:31px;
    color:#c4cfbf;
    font-size:10px;
    letter-spacing:.12em;
    display:flex;
    gap:9px;
    align-items:center
}
.ai-art-card {
    position:absolute;
    bottom:65px;
    inset-inline-start:30px;
    display:flex;
    align-items:center;
    gap:13px;
    color:#dce4d6;
    background:#344136;
    border:1px solid #52604e;
    padding:14px 21px
}
.ai-art-card small {
    font-size:9px;
    letter-spacing:.13em;
    color:#a4b29c
}
.ai-art-card strong {
    display:block;
    font-size:14px;
    margin-top:5px;
    font-weight:400
}
.ai-cross {
    font-size:33px;
    line-height:1;
    color:var(--ai-orange);
    font-weight:400
}
.ai-art-caption {
    position:absolute;
    bottom:23px;
    inset-inline-start:30px;
    font-size:9px;
    color:#9ca992!important
}
.ai-process-strip {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:25px 7%;
    border-block:1px solid var(--ai-line);
    background:#edeee6;
    gap:20px;
    font-size:13px
}
.ai-process-strip span {
    display:flex;
    gap:17px;
    align-items:center
}
.ai-process-strip b {
    font-size:11px;
    font-weight:400;
    color:#919585
}
.ai-process-strip i {
    font-style:normal;
    color:#939a87
}
.ai-section {
    padding:86px 4.5%
}
.ai-section-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:50px;
    margin-bottom:35px
}
.ai-section-head h2 {
    font-size:clamp(30px,3vw,43px);
    line-height:1.13;
    font-weight:700;
    letter-spacing:-.035em;
    max-width:580px;
    margin-top:17px
}
.ai-section-head>p {
    font-size:14px;
    line-height:1.7;
    color:var(--ai-muted);
    max-width:330px
}
.ai-service-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px
}
.ai-service {
    padding:19px 21px 27px;
    border:1px solid var(--ai-line);
    transition:background .2s
}
.ai-service:hover {
    background:#e9ebe1
}
.ai-service-top {
    display:flex;
    justify-content:space-between;
    font-size:11px;
    color:#818775
}
.ai-service-top>span:last-child {
    font-size:20px;
    color:var(--ai-ink)
}
.ai-service h3 {
    font-size:21px;
    font-weight:700;
    letter-spacing:-.02em
}
.ai-service p {
    font-size:13px;
    color:var(--ai-muted);
    margin-top:8px
}
.ai-part {
    height:170px;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    perspective:700px
}
.ai-part span {
    display:block;
    width:118px;
    height:91px;
    background:linear-gradient(125deg,#e0e2db,#939d93 45%,#b5bdb0);
    border:1px solid #7d897c;
    transform:rotateX(50deg) rotateZ(-32deg);
    box-shadow:-9px 12px 0 #798774,0 28px 16px -12px #26351f40
}
.ai-part span:after {
    content:'';
    position:absolute;
    width:34px;
    height:34px;
    inset:26px 39px;
    background:#f0f1e8;
    border:2px solid #7e8b79;
    border-radius:50%;
    box-shadow:36px -21px 0 -11px #e5e9dc,-32px 21px 0 -11px #e5e9dc
}
.ai-part-bend span {
    transform:rotateX(35deg) rotateZ(-30deg);
    height:60px
}
.ai-part-bend i {
    position:absolute;
    width:120px;
    height:58px;
    background:linear-gradient(120deg,#b6bfb0,#71806c);
    transform:translate(28px,-33px) skewY(-26deg);
    border:1px solid #8e9a84
}
.ai-part-weld span {
    width:110px;
    height:65px;
    transform:rotateX(30deg) rotateZ(-30deg)
}
.ai-part-weld i {
    position:absolute;
    height:64px;
    width:65px;
    background:linear-gradient(120deg,#e0e5d7,#8e9f83);
    transform:translate(16px,-29px) skewY(-30deg);
    border:1px solid #94a788;
    border-bottom:3px dashed #d18b51
}
.ai-part-finish span {
    background:linear-gradient(120deg,#f09266,#a95029);
    border-color:#a65e35;
    box-shadow:-9px 12px 0 #a04b26,0 28px 16px -12px #26351f40
}
.ai-materials {
    background:#e9ece2;
    border-block:1px solid #dce1d3
}
.ai-material-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:26px
}
.ai-swatch {
    height:178px;
    position:relative;
    overflow:hidden;
    background:repeating-linear-gradient(0deg,#8a918b 0,#a5aaa1 1px,#a0a69e 2px,#939b91 3px);
    border:1px solid #a9b19f
}
.ai-swatch:after {
    content:'';
    position:absolute;
    width:75%;
    height:240%;
    background:#fff2;
    transform:rotate(-32deg);
    top:-50%;
    left:12%;
    transition:left .6s
}
.ai-material:hover .ai-swatch:after {
    left:50%
}
.ai-swatch-stainless {
    background:repeating-linear-gradient(0deg,#bcc2b6 0,#e0e3da 1px,#d5dacf 2px,#aeb8a6 3px)
}
.ai-swatch-aluminium {
    background:repeating-linear-gradient(0deg,#c8cfc1 0,#e4e7df 1px,#d6dcd0 2px,#ced4c9 3px)
}
.ai-swatch span {
    position:absolute;
    bottom:13px;
    left:16px;
    direction:ltr;
    font-size:9px;
    letter-spacing:.13em;
    color:#2e3a2c
}
.ai-material h3 {
    display:flex;
    justify-content:space-between;
    font-size:22px;
    font-weight:700;
    margin-top:19px
}
.ai-material h3 span {
    font-weight:400
}
.ai-material p {
    font-size:13px;
    color:#727b68;
    margin-top:7px
}
.ai-steps {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
    margin-top:48px
}
.ai-steps article {
    border-top:1px solid #c9cfbf;
    padding-top:22px
}
.ai-steps article>span {
    font-size:12px;
    color:#9a5b3b
}
.ai-steps h3 {
    font-size:23px;
    font-weight:700;
    margin-top:28px
}
.ai-steps p {
    font-size:14px;
    line-height:1.7;
    color:var(--ai-muted);
    margin-top:12px;
    max-width:330px
}
.ai-cta {
    background:var(--ai-orange);
    padding:55px 4.5%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:35px
}
.ai-cta h2 {
    font-size:clamp(30px,3.7vw,50px);
    letter-spacing:-.04em;
    font-weight:700;
    line-height:1.15;
    margin-top:17px
}
.ai-cta p:last-child {
    font-size:14px;
    margin-top:16px;
    max-width:500px
}
.ai-button-dark {
    background:#263129;
    color:#f2f4ec!important;
    white-space:nowrap
}
.ai-button-dark:hover {
    background:#3a473d
}
.ai-footer {
    background:#263129;
    color:#e2e6da;
    padding:44px 4.5% 20px
}
.ai-footer .ai-brand-symbol span {
    color:#e2e6da
}
.ai-footer-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:50px;
    padding-bottom:35px
}
.ai-footer-top p {
    font-size:13px;
    max-width:300px;
    color:#aebba5
}
.ai-footer-top>a:last-child {
    font-size:13px;
    border-bottom:1px solid #7c8d71;
    padding-bottom:7px
}
.ai-footer-bottom {
    display:flex;
    justify-content:space-between;
    gap:20px;
    border-top:1px solid #45513f;
    padding-top:19px;
    color:#9eaf94;
    font-size:10px
}
.ai-site[dir=rtl] h1,.ai-site[dir=rtl] h2,.ai-site[dir=rtl] h3 {
    letter-spacing:0;
    line-height:1.55
}
.ai-quote-main {
    padding:40px 6% 80px
}
.ai-quote-main>.ai-eyebrow {
    margin-top:35px
}
.ai-quote-main>h1 {
    font-size:clamp(35px,4vw,58px);
    letter-spacing:-.04em;
    font-weight:700;
    line-height:1.12;
    max-width:850px;
    margin-top:17px
}
.ai-quote-intro {
    max-width:750px;
    color:var(--ai-muted)!important;
    font-size:16px;
    margin-top:20px!important
}
.ai-quote-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    align-items:start;
    margin-top:42px
}
.ai-configurator,.ai-request {
    border:1px solid var(--ai-line);
    padding:30px;
    background:#fff9
}
.ai-quote-grid h2 {
    font-weight:700;
    font-size:23px;
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:18px
}
.ai-quote-grid h2>span {
    font-size:12px;
    color:#ae5734
}
.ai-muted {
    color:var(--ai-muted)!important;
    font-size:13px;
    line-height:1.7;
    margin-bottom:18px!important
}
.ai-small {
    font-size:11px
}
.ai-field-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px
}
.ai-field {
    display:flex;
    flex-direction:column;
    gap:7px;
    margin-bottom:16px
}
.ai-field-grid .ai-field {
    margin-bottom:0
}
.ai-full {
    grid-column:1/-1
}
.ai-field label,.ai-field>span {
    font-size:12px;
    font-weight:700
}
.ai-field input,.ai-field select,.ai-field textarea {
    display:block;
    width:100%;
    border:1px solid #cdd3c4!important;
    border-radius:0!important;
    padding:11px 12px!important;
    background:#fafbf7!important;
    color:#283326!important;
    min-width:0
}
.ai-configurator>.ai-button {
    margin-top:24px;
    width:100%
}
.ai-estimate {
    margin-top:18px;
    background:#e9eee2;
    border:1px solid #d1dcc6;
    padding:20px;
    font-size:13px
}
.ai-estimate strong {
    display:block;
    font-size:31px;
    font-weight:700;
    margin:7px 0
}
.ai-estimate small {
    display:block;
    color:#626e58;
    line-height:1.8
}
.ai-upload {
    display:flex;
    position:relative;
    border:1px dashed #aab79c;
    min-height:145px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    background:#eef2e8;
    cursor:pointer;
    padding:20px;
    text-align:center;
    gap:5px
}
.ai-upload-icon {
    font-size:30px;
    color:#7d8c71
}
.ai-upload small {
    font-size:10px;
    letter-spacing:.1em;
    color:var(--ai-muted)
}
.ai-upload input {
    position:absolute;
    inset:0;
    opacity:0;
    cursor:pointer
}
.ai-upload:focus-within {
    outline:2px solid #b84c22;
    outline-offset:3px
}
#ai-file-list {
    font-size:11px;
    overflow-wrap:anywhere
}
.ai-request .ai-button {
    width:100%
}
.ai-request .s_website_form_end_message {
    background:#e5eddd;
    padding:24px
}
.ai-site .d-none {
    display:none!important
}
.ai-site .s_website_form_end_message h3 {
    font-size:24px;
    font-weight:700;
    margin-bottom:10px
}
.ai-site .s_website_form_end_message p {
    font-size:14px
}
.ai-site .s_website_form_field label {
    width:auto;
    max-width:100%
}
.ai-site .s_website_form_input {
    font-size:14px
}
.ai-site .s_website_form_submit {
    display:block
}
.ai-site [dir=ltr] {
    text-align:left
}
@keyframes ai-rise {
    from {
        opacity:0;
        transform:translateY(20px)
    }
    to {
        opacity:1;
        transform:translateY(0)
    }
}
@media(min-width:1600px) {
    .ai-hero {
        min-height:700px
    }
    .ai-hero-copy {
        padding-top:110px
    }
    .ai-hero-art {
        min-height:700px
    }
}
@media(max-width:1000px) {
    .ai-nav {
        gap:20px
    }
    .ai-links {
        gap:18px
    }
    .ai-hero-copy {
        padding-top:56px
    }
    .ai-hero h1 {
        font-size:57px
    }
    .ai-hero-art {
        min-height:580px
    }
    .ai-hero-actions {
        gap:16px
    }
    .ai-hero-intro {
        font-size:15px
    }
    .ai-service-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .ai-service {
        padding:22px
    }
    .ai-part {
        height:180px
    }
    .ai-section-head {
        gap:25px
    }
    .ai-section-head>p {
        max-width:270px
    }
    .ai-quote-grid {
        gap:20px
    }
    .ai-configurator,.ai-request {
        padding:22px
    }
}
@media(max-width:760px) {
    .ai-announcement {
        font-size:9px;
        height:31px
    }
    .ai-announcement-end {
        display:none
    }
    .ai-nav {
        padding:19px 5%;
        gap:12px;
        flex-wrap:wrap
    }
    .ai-brand {
        font-size:17px;
        gap:8px
    }
    .ai-brand small {
        font-size:8px
    }
    .ai-brand-symbol {
        font-size:36px
    }
    .ai-brand-symbol span {
        font-size:34px
    }
    .ai-links {
        order:3;
        width:100%;
        justify-content:space-between;
        padding-top:17px;
        border-top:1px solid var(--ai-line);
        margin-top:6px
    }
    .ai-links a {
        font-size:12px
    }
    .ai-nav-actions {
        gap:14px
    }
    .ai-language {
        font-size:12px
    }
    .ai-button-small {
        font-size:12px;
        padding:10px 12px;
        gap:12px
    }
    .ai-hero {
        grid-template-columns:1fr
    }
    .ai-hero-copy,.ai-site[dir=rtl] .ai-hero-copy {
        padding:43px 6% 40px
    }
    .ai-hero h1 {
        font-size:clamp(52px,11vw,74px);
        margin-top:24px
    }
    .ai-hero-intro {
        font-size:16px;
        max-width:520px
    }
    .ai-hero-art {
        min-height:390px
    }
    .ai-hero-art>img {
        max-width:520px;
        margin-top:-25px
    }
    .ai-art-card {
        bottom:44px;
        inset-inline-start:23px;
        padding:10px 15px
    }
    .ai-art-card strong {
        font-size:12px
    }
    .ai-art-label {
        top:21px;
        inset-inline-start:23px;
        font-size:9px
    }
    .ai-art-caption {
        bottom:14px;
        inset-inline-start:23px;
        font-size:8px
    }
    .ai-process-strip {
        padding:20px 6%;
        gap:10px;
        font-size:10px
    }
    .ai-process-strip span {
        gap:7px
    }
    .ai-process-strip b {
        font-size:9px
    }
    .ai-process-strip i {
        display:none
    }
    .ai-section {
        padding:53px 6%
    }
    .ai-section-head {
        display:block;
        margin-bottom:28px
    }
    .ai-section-head h2 {
        font-size:34px
    }
    .ai-section-head>p {
        max-width:100%;
        margin-top:17px
    }
    .ai-section-head>.ai-text-link {
        display:inline-block;
        margin-top:20px
    }
    .ai-service-grid {
        gap:11px
    }
    .ai-service {
        padding:15px 15px 22px
    }
    .ai-service h3 {
        font-size:20px
    }
    .ai-service p {
        font-size:12px
    }
    .ai-part {
        height:135px;
        transform:scale(.8)
    }
    .ai-material-grid {
        grid-template-columns:1fr;
        gap:30px
    }
    .ai-swatch {
        height:180px
    }
    .ai-material h3 {
        margin-top:14px
    }
    .ai-steps {
        grid-template-columns:1fr;
        gap:30px;
        margin-top:30px
    }
    .ai-steps article {
        display:grid;
        grid-template-columns:35px 1fr;
        column-gap:15px
    }
    .ai-steps h3 {
        margin-top:0;
        font-size:22px
    }
    .ai-steps p {
        grid-column:2;
        max-width:100%;
        margin-top:10px
    }
    .ai-cta {
        padding:42px 6%;
        display:block
    }
    .ai-cta h2 {
        font-size:38px
    }
    .ai-cta>.ai-button {
        margin-top:27px
    }
    .ai-footer {
        padding:35px 6% 20px
    }
    .ai-footer-top {
        flex-wrap:wrap;
        gap:25px
    }
    .ai-footer-top p {
        max-width:100%;
        width:100%;
        order:3
    }
    .ai-footer-top>a:last-child {
        font-size:11px
    }
    .ai-footer-bottom {
        font-size:9px;
        flex-wrap:wrap;
        gap:10px
    }
    .ai-quote-main {
        padding:30px 5% 55px
    }
    .ai-quote-main>h1 {
        font-size:40px
    }
    .ai-quote-grid {
        grid-template-columns:1fr;
        gap:25px
    }
    .ai-quote-intro {
        font-size:14px
    }
    .ai-eyebrow {
        font-size:10px!important
    }
    .ai-site[dir=rtl] .ai-hero h1 {
        font-size:46px
    }
    .ai-site[dir=rtl] .ai-service h3 {
        font-size:18px
    }
}
@media(prefers-reduced-motion:reduce) {
    .ai-site * {
        animation:none!important;
        transition:none!important;
        scroll-behavior:auto!important
    }
}
