
:root{
  --rv-charcoal:#171717;
  --rv-gold:#B08A52;
  --rv-sand:#C9B79C;
  --rv-stone:#8A8378;
  --rv-ivory:#F3EFE7;
  --rv-white:#fbfaf7;
  --rv-serif:"Playfair Display", Georgia, serif;
  --rv-sans:"Montserrat", Arial, sans-serif;
  --rv-ar:"29LT Bukra","Noto Kufi Arabic",Tahoma,sans-serif;
  --container:min(1220px, calc(100vw - 56px));
  --header-h:88px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--rv-charcoal)}
body{margin:0;color:var(--rv-charcoal);font-family:var(--rv-sans);background:var(--rv-ivory);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body[dir="rtl"]{font-family:var(--rv-ar)}
body[dir="rtl"] .rv-display{font-family:var(--rv-ar);font-weight:600;line-height:1.35;letter-spacing:0}
body[dir="rtl"] .rv-eyebrow{font-family:var(--rv-ar);letter-spacing:.05em;text-transform:none}
body[dir="rtl"] .hero-copy, body[dir="rtl"] p{line-height:1.95}
body[dir="rtl"] .project-arrow{transform:scaleX(-1)}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
.container{width:var(--container);margin:0 auto}
.section{padding:120px 0}
.ivory{background:var(--rv-ivory)}
.charcoal{background:var(--rv-charcoal)}
.sand{background:#d7c9b5}
.rv-display{font-family:var(--rv-serif);font-weight:400;letter-spacing:-.035em;line-height:1.01;margin:0}
.rv-eyebrow{font-family:var(--rv-sans);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600}
.light{color:var(--rv-ivory)}
.light-muted{color:rgba(243,239,231,.66)}
.gold-rule{width:92px;border-top:1px solid var(--rv-gold);margin-top:20px}
.section-label{color:var(--rv-gold);margin-bottom:24px}
.section-heading{margin-bottom:64px}.section-heading h2{font-size:clamp(2.6rem,5vw,5rem);max-width:780px}
.section-intro{max-width:430px;margin:0;color:#5b564f}.row-between{display:flex;justify-content:space-between;gap:56px}.align-end{align-items:flex-end}
.site-header{position:fixed;z-index:50;inset:0 0 auto 0;height:var(--header-h);display:grid;grid-template-columns:230px 1fr 100px;align-items:center;padding:0 max(28px,calc((100vw - 1220px)/2));transition:.35s ease;color:var(--rv-ivory);border-bottom:1px solid rgba(255,255,255,.12)}
.site-header.scrolled{height:74px;background:rgba(243,239,231,.94);backdrop-filter:blur(14px);color:var(--rv-charcoal);border-color:rgba(23,23,23,.1)}
.brand img{width:168px;height:auto}.brand-dark{display:none}.site-header.scrolled .brand-light{display:none}.site-header.scrolled .brand-dark{display:block}
.main-nav{justify-self:center;display:flex;gap:34px;align-items:center;font-size:.78rem;text-transform:uppercase;letter-spacing:.14em}
.main-nav a{position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;border-top:1px solid var(--rv-gold);transition:.25s}.main-nav a:hover:after{right:0}
.lang-toggle{justify-self:end;background:none;border:0;color:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;padding:8px}
.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{width:24px;border-top:1px solid currentColor;display:block;margin:6px 0}
.hero{position:relative;height:min(960px,100vh);min-height:720px;background:var(--rv-charcoal);color:var(--rv-ivory);display:flex;align-items:flex-end;overflow:hidden}
.hero-media{position:absolute;inset:0;background-image:url('/assets/solik-cinematic.webp');background-size:cover;background-position:55% 50%;transform:scale(1.03);animation:heroMove 16s ease-in-out infinite alternate}
@keyframes heroMove{from{transform:scale(1.03) translateX(0)}to{transform:scale(1.08) translateX(-1.5%)}}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,23,23,.92) 0%,rgba(23,23,23,.68) 39%,rgba(23,23,23,.1) 75%),linear-gradient(0deg,rgba(23,23,23,.78),transparent 40%)}
.hero-content{position:relative;z-index:2;padding-bottom:138px}
.hero-kicker{color:var(--rv-sand);margin-bottom:24px}.hero h1{font-size:clamp(4.3rem,9.2vw,9.2rem);max-width:820px}.hero-copy{max-width:690px;font-size:1.05rem;color:rgba(243,239,231,.78);margin:26px 0 34px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 24px;border:1px solid transparent;text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;font-weight:600;transition:.25s;cursor:pointer}.btn-solid{background:var(--rv-gold);color:var(--rv-charcoal)}.btn-solid:hover{background:var(--rv-sand)}.btn-ghost{border-color:rgba(243,239,231,.55);color:var(--rv-ivory)}.btn-ghost:hover{border-color:var(--rv-gold);color:var(--rv-gold)}.btn-dark{background:var(--rv-charcoal);color:var(--rv-ivory)}.btn-dark:hover{background:#2a2825}
.hero-foot{position:absolute;z-index:3;bottom:28px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;color:rgba(243,239,231,.6);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.scroll-note{color:var(--rv-sand)}
.split-grid{display:grid;grid-template-columns:.34fr .66fr;gap:72px}.manifesto-copy h2{font-size:clamp(2.9rem,5.5vw,5.5rem);margin-bottom:28px}.manifesto-copy p{max-width:760px;font-size:1.08rem;color:#5b564f}.text-link{display:inline-flex;gap:12px;align-items:center;margin-top:20px;font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;font-weight:600;border-bottom:1px solid var(--rv-gold);padding-bottom:5px}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(243,239,231,.16);border-left:1px solid rgba(243,239,231,.16)}.cap-card{padding:38px 30px 42px;min-height:270px;border-right:1px solid rgba(243,239,231,.16);border-bottom:1px solid rgba(243,239,231,.16);position:relative}.cap-no{color:var(--rv-gold);font-size:.7rem;letter-spacing:.16em}.cap-card h3{color:var(--rv-ivory);font-family:var(--rv-serif);font-size:1.55rem;font-weight:400;margin:54px 0 14px}.cap-card p{color:rgba(243,239,231,.58);font-size:.9rem;margin:0;max-width:310px}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(23,23,23,.18);margin-top:18px}.journey-step{padding:38px 28px 0;border-right:1px solid rgba(23,23,23,.18);min-height:330px}.journey-step:last-child{border-right:0}.journey-step img{width:58px;height:58px;object-fit:contain;margin-bottom:36px}.journey-step>span{font-size:.68rem;letter-spacing:.18em;color:#6e655b}.journey-step h3{font-family:var(--rv-serif);font-size:2rem;font-weight:400;margin:8px 0 14px}.journey-step p{font-size:.88rem;color:#625b53}
.projects-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:42px 24px}.project-wide{grid-row:span 2}.project-img{overflow:hidden;background:#d2c5b2}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.project-wide .project-img{height:690px}.project-card:not(.project-wide) .project-img{height:300px}.project-card:hover img{transform:scale(1.025)}.project-meta{display:flex;justify-content:space-between;align-items:flex-start;padding-top:18px;border-top:1px solid #cfc7bc;margin-top:14px}.project-meta span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#766e64}.project-meta h3{font-family:var(--rv-serif);font-size:1.35rem;font-weight:400;margin:5px 0}.project-arrow{font-size:1.2rem;color:var(--rv-gold)}
.patterned{position:relative;overflow:hidden}.patterned:before{content:"";position:absolute;inset:0;background:url('/assets/brand-7a68013cf242.svg') center/580px auto;opacity:.07}.story-grid{position:relative;display:grid;grid-template-columns:.45fr .55fr;gap:90px;align-items:center}.story-symbol img{width:min(420px,100%);margin:auto}.story-grid h2{font-size:clamp(3rem,5.8vw,5.8rem);margin-bottom:44px}.symbol-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(243,239,231,.14);border-left:1px solid rgba(243,239,231,.14)}.symbol-list>div{padding:24px;border-right:1px solid rgba(243,239,231,.14);border-bottom:1px solid rgba(243,239,231,.14)}.symbol-list span{color:var(--rv-gold);font-size:.68rem;letter-spacing:.16em}.symbol-list strong{display:block;color:var(--rv-ivory);margin:12px 0 6px;font-weight:500}.symbol-list p{margin:0;color:rgba(243,239,231,.55);font-size:.85rem}
.journal-note{font-size:.75rem;color:#766e64;max-width:260px}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cfc7bc;border-left:1px solid #cfc7bc}.journal-card{min-height:390px;padding:30px;display:flex;flex-direction:column;border-right:1px solid #cfc7bc;border-bottom:1px solid #cfc7bc}.journal-index{font-family:var(--rv-serif);font-size:3.2rem;color:#c2b29a;margin-bottom:auto}.journal-card .rv-eyebrow{color:var(--rv-gold);margin:28px 0 10px}.journal-card h3{font-family:var(--rv-serif);font-size:1.6rem;font-weight:400;line-height:1.25;margin:0 0 14px}.journal-card p{font-size:.86rem;color:#6c655d}.read-more{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;margin-top:14px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-intro h2{font-size:clamp(3rem,5.8vw,5.8rem);margin-bottom:26px}.contact-intro>p{color:#5d564d;max-width:510px}.contact-placeholder{margin-top:46px;border-top:1px solid rgba(23,23,23,.2);padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:.76rem;text-transform:uppercase;letter-spacing:.1em}.contact-placeholder strong{color:#6d5b43}.project-form{display:grid;grid-template-columns:1fr 1fr;gap:26px 20px;background:rgba(243,239,231,.58);padding:38px}.project-form label{display:flex;flex-direction:column;gap:10px;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.project-form input,.project-form select,.project-form textarea{border:0;border-bottom:1px solid #9b8f7e;background:transparent;padding:12px 2px;outline:none;border-radius:0;color:var(--rv-charcoal);text-transform:none;letter-spacing:0}.project-form textarea{resize:vertical}.project-form .full{grid-column:1/-1}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-color:var(--rv-gold)}
.site-footer{background:var(--rv-charcoal);color:var(--rv-ivory);padding:58px 0 32px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:46px;border-bottom:1px solid rgba(243,239,231,.14)}.footer-top img{width:180px}.footer-top p{max-width:450px;color:rgba(243,239,231,.58);font-size:.84rem}.footer-bottom{display:flex;justify-content:space-between;padding-top:28px;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;color:rgba(243,239,231,.52)}.footer-bottom nav{display:flex;gap:22px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.in{opacity:1;transform:none}
@media (max-width:980px){
  :root{--container:min(100% - 36px, 880px)}.section{padding:88px 0}.site-header{grid-template-columns:1fr auto auto;padding:0 18px}.main-nav{position:fixed;top:0;right:0;width:min(390px,88vw);height:100vh;background:var(--rv-charcoal);color:var(--rv-ivory);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:48px;gap:22px;transform:translateX(105%);transition:.3s;z-index:100;font-size:1rem}.main-nav.open{transform:none}.menu-toggle{display:block;color:inherit;z-index:101}.lang-toggle{z-index:101}.brand{z-index:101}.site-header.scrolled .main-nav{background:var(--rv-charcoal);color:var(--rv-ivory)}.site-header.scrolled .menu-toggle{color:var(--rv-charcoal)}
  .hero{min-height:760px}.hero-content{padding-bottom:130px}.hero h1{font-size:clamp(4rem,13vw,7rem)}.hero-overlay{background:linear-gradient(90deg,rgba(23,23,23,.9),rgba(23,23,23,.42)),linear-gradient(0deg,rgba(23,23,23,.8),transparent 45%)}.hero-foot span:first-child{display:none}
  .split-grid,.story-grid,.contact-grid{grid-template-columns:1fr;gap:48px}.cap-grid{grid-template-columns:1fr 1fr}.journey-grid{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:1fr}.project-wide{grid-row:auto}.project-wide .project-img,.project-card:not(.project-wide) .project-img{height:460px}.journal-grid{grid-template-columns:1fr}.row-between{flex-direction:column;align-items:flex-start}.section-intro{max-width:620px}.story-symbol img{max-width:320px}.contact-grid{gap:56px}
}
@media (max-width:620px){
  :root{--container:calc(100vw - 28px);--header-h:72px}.section{padding:72px 0}.site-header{height:72px}.site-header.scrolled{height:66px}.brand img{width:138px}.lang-toggle{font-size:.68rem}.hero{min-height:700px}.hero-content{padding-bottom:126px}.hero-kicker{font-size:.62rem}.hero h1{font-size:3.9rem}.hero-copy{font-size:.92rem}.hero-actions{width:100%}.hero-actions .btn{flex:1;padding:0 14px;font-size:.62rem}.hero-foot{bottom:22px}.cap-grid{grid-template-columns:1fr}.cap-card{min-height:230px}.journey-grid{grid-template-columns:1fr}.journey-step{border-right:0;border-bottom:1px solid rgba(23,23,23,.18);padding:28px 8px;min-height:auto}.journey-step img{margin-bottom:20px}.projects-grid{gap:34px}.project-wide .project-img,.project-card:not(.project-wide) .project-img{height:320px}.symbol-list{grid-template-columns:1fr}.journal-card{min-height:350px}.project-form{grid-template-columns:1fr;padding:26px 20px}.project-form label,.project-form .full{grid-column:1}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:24px}.footer-bottom nav{flex-wrap:wrap}.section-heading{margin-bottom:46px}.section-heading h2{font-size:2.8rem}.manifesto-copy h2,.contact-intro h2,.story-grid h2{font-size:3rem}
}

/* ==========================================================
   V2 — transparent navigation, branded preloader & full menu
   ========================================================== */
body.menu-open{overflow:hidden}

/* Branded intro / preload */
.preloader{position:fixed;inset:0;z-index:1000;background:var(--rv-charcoal);display:grid;place-items:center;color:var(--rv-ivory);transition:transform .9s cubic-bezier(.77,0,.18,1),visibility .9s;overflow:hidden}
.preloader:before{content:"";position:absolute;inset:-10%;background:url('/assets/brand-2d3ba2f7bfb4.svg') center/620px auto repeat;opacity:.09;animation:prePattern 8s linear infinite alternate}
.preloader-inner{position:relative;z-index:2;width:min(410px,78vw);display:flex;flex-direction:column;align-items:center;text-align:center}
.preloader-symbol{width:112px;height:112px;object-fit:contain;opacity:0;transform:translateY(18px) scale(.94);animation:preSymbol .8s .15s cubic-bezier(.22,1,.36,1) forwards}
.preloader-wordmark{font-family:var(--rv-serif);font-size:clamp(2.25rem,5vw,3.6rem);letter-spacing:.18em;color:var(--rv-gold);margin-top:6px;opacity:0;transform:translateY(10px);animation:preWord .7s .48s ease forwards}
.preloader-progress{width:100%;height:1px;background:rgba(243,239,231,.16);margin:22px 0 17px;overflow:hidden}
.preloader-progress span{display:block;width:0;height:100%;background:var(--rv-gold);animation:preLine 1.35s .35s cubic-bezier(.65,0,.35,1) forwards}
.preloader-tagline{font-size:.62rem;letter-spacing:.33em;color:rgba(243,239,231,.55);opacity:0;animation:preWord .65s .72s ease forwards}
body.is-ready .preloader{transform:translateY(-100%);visibility:hidden}
@keyframes preSymbol{to{opacity:1;transform:none}}
@keyframes preWord{to{opacity:1;transform:none}}
@keyframes preLine{to{width:100%}}
@keyframes prePattern{from{transform:translate3d(-1%,0,0)}to{transform:translate3d(1%,-1%,0)}}

/* The fixed bar remains transparent on every section */
.site-header{position:fixed;z-index:90;inset:0 0 auto 0;height:96px;display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 max(28px,calc((100vw - 1220px)/2));color:var(--rv-ivory);background:transparent!important;border:0!important;backdrop-filter:none!important;transition:height .35s ease,padding .35s ease}
.site-header.scrolled{height:78px;background:transparent!important;color:var(--rv-ivory);border:0!important;backdrop-filter:none!important}
.site-header:after{content:"";position:absolute;inset:0 0 -36px;z-index:-1;background:linear-gradient(180deg,rgba(23,23,23,.42) 0%,rgba(23,23,23,.13) 52%,transparent 100%);pointer-events:none;opacity:.8;transition:opacity .3s}
.site-header.scrolled:after{opacity:.56}
.brand{position:relative;z-index:2;width:max-content}
.brand img{width:194px;height:auto;filter:drop-shadow(0 2px 14px rgba(0,0,0,.2))}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;position:relative;z-index:3}
.lang-toggle{justify-self:auto;border:0;background:transparent;color:var(--rv-ivory);cursor:pointer;text-transform:uppercase;letter-spacing:.13em;font-size:.69rem;padding:12px 4px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.lang-toggle:hover{color:var(--rv-gold)}
.menu-toggle{width:72px;height:72px;border-radius:999px;border:1px solid rgba(176,138,82,.72);background:rgba(23,23,23,.2);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);color:var(--rv-ivory);padding:0;display:grid;place-content:center;gap:7px;cursor:pointer;transition:background .3s ease,border-color .3s ease,transform .3s ease;color:.3s ease;position:relative}
.menu-toggle:hover{background:var(--rv-gold);border-color:var(--rv-gold);color:var(--rv-charcoal);transform:scale(1.03)}
.menu-label{font-size:.58rem;line-height:1;letter-spacing:.16em;text-transform:uppercase;font-weight:600}
.menu-glyph{display:block;width:20px;height:9px;position:relative;margin:auto}
.menu-glyph i{position:absolute;left:0;width:20px;border-top:1px solid currentColor;transition:transform .35s ease,top .35s ease}
.menu-glyph i:first-child{top:1px}.menu-glyph i:last-child{top:8px}
body.menu-open .menu-glyph i:first-child{top:4px;transform:rotate(45deg)}
body.menu-open .menu-glyph i:last-child{top:4px;transform:rotate(-45deg)}
body.menu-open .menu-toggle{background:var(--rv-gold);border-color:var(--rv-gold);color:var(--rv-charcoal)}
body.menu-open .site-header:after{opacity:0}

/* Full-screen tap menu */
.menu-overlay{position:fixed;z-index:70;inset:0;background:var(--rv-charcoal);color:var(--rv-ivory);visibility:hidden;pointer-events:none;clip-path:circle(0 at calc(100% - 64px) 50px);transition:clip-path .75s cubic-bezier(.77,0,.18,1),visibility .75s;overflow:hidden}
.menu-overlay.open{visibility:visible;pointer-events:auto;clip-path:circle(150% at calc(100% - 64px) 50px)}
.menu-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(243,239,231,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,231,.045) 1px,transparent 1px);background-size:84px 84px;mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.85) 55%,transparent 100%)}
.menu-pattern:after{content:"";position:absolute;inset:0;background:url('/assets/brand-2d3ba2f7bfb4.svg') right 7vw center/530px auto no-repeat;opacity:.11}
.menu-watermark{position:absolute;right:-.045em;top:50%;transform:translateY(-50%);font-family:var(--rv-serif);font-size:clamp(8rem,19vw,20rem);line-height:.8;letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px rgba(176,138,82,.14);white-space:nowrap;user-select:none}
.menu-content{height:100%;padding-top:clamp(135px,16vh,180px);padding-bottom:44px;display:flex;flex-direction:column;position:relative;z-index:2}
.menu-eyebrow{color:var(--rv-gold);margin-bottom:22px;opacity:0;transform:translateY(18px);transition:.45s .23s}
.menu-overlay.open .menu-eyebrow{opacity:1;transform:none}
.main-nav{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;width:min(690px,70vw);font-size:inherit;text-transform:none;letter-spacing:0}
.main-nav a{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:16px;padding:10px 0 12px;border-bottom:1px solid rgba(243,239,231,.12);opacity:0;transform:translateY(25px);transition:opacity .45s,transform .45s,color .25s,padding-left .25s}
.menu-overlay.open .main-nav a{opacity:1;transform:none}
.menu-overlay.open .main-nav a:nth-child(1){transition-delay:.25s}.menu-overlay.open .main-nav a:nth-child(2){transition-delay:.31s}.menu-overlay.open .main-nav a:nth-child(3){transition-delay:.37s}.menu-overlay.open .main-nav a:nth-child(4){transition-delay:.43s}.menu-overlay.open .main-nav a:nth-child(5){transition-delay:.49s}.menu-overlay.open .main-nav a:nth-child(6){transition-delay:.55s}
.main-nav a:after{display:none!important}
.main-nav a>span{font-size:.62rem;letter-spacing:.16em;color:var(--rv-gold)}
.main-nav a>strong{font-family:var(--rv-serif);font-size:clamp(2.3rem,5.1vw,5.4rem);line-height:1.02;font-weight:400;letter-spacing:-.035em}
.main-nav a:hover{color:var(--rv-gold);padding-left:9px}
.menu-meta{margin-top:auto;padding-top:28px;border-top:1px solid rgba(243,239,231,.12);display:flex;justify-content:space-between;gap:30px;font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:rgba(243,239,231,.48);opacity:0;transform:translateY(12px);transition:.45s .5s}
.menu-overlay.open .menu-meta{opacity:1;transform:none}
body[dir="rtl"] .main-nav a{grid-template-columns:1fr 58px}
body[dir="rtl"] .main-nav a>span{grid-column:2;grid-row:1;text-align:left}
body[dir="rtl"] .main-nav a>strong{grid-column:1;grid-row:1;font-family:var(--rv-ar);letter-spacing:0;line-height:1.35}
body[dir="rtl"] .main-nav a:hover{padding-left:0;padding-right:9px}
body[dir="rtl"] .menu-watermark{right:auto;left:-.045em}

@media (max-width:980px){
  .site-header{grid-template-columns:1fr auto;padding:0 20px;height:86px}
  .site-header.scrolled{height:74px}
  .brand img{width:172px}
  .header-actions{gap:10px}
  .menu-toggle{display:grid;width:64px;height:64px}
  .lang-toggle{display:block}
  .main-nav{position:static;top:auto;right:auto;width:min(660px,82vw);height:auto;background:transparent;color:inherit;padding:0;gap:0;transform:none;transition:none;z-index:auto;align-items:stretch}
  .menu-content{padding-top:130px}
  .menu-watermark{font-size:28vw;opacity:.75}
}
@media (max-width:620px){
  .site-header{height:76px;padding:0 14px}
  .site-header.scrolled{height:70px}
  .brand img{width:145px}
  .header-actions{gap:6px}
  .lang-toggle{font-size:.61rem;padding:8px 2px}
  .menu-toggle{width:56px;height:56px}
  .menu-label{font-size:.49rem}
  .menu-content{padding-top:108px;padding-bottom:26px}
  .menu-eyebrow{margin-bottom:14px}
  .main-nav{width:100%}
  .main-nav a{grid-template-columns:38px 1fr;gap:10px;padding:9px 0}
  .main-nav a>strong{font-size:clamp(2.2rem,12vw,3.55rem)}
  .menu-meta{flex-direction:column;gap:8px;font-size:.56rem}
  .menu-watermark{display:none}
  .preloader-symbol{width:94px;height:94px}
  .preloader-wordmark{font-size:2.6rem}
  .preloader-tagline{font-size:.54rem;letter-spacing:.24em}
}
@media (prefers-reduced-motion:reduce){
  .preloader:before,.preloader-symbol,.preloader-wordmark,.preloader-progress span,.preloader-tagline{animation:none!important;opacity:1;transform:none}
  .menu-overlay,.menu-eyebrow,.main-nav a,.menu-meta{transition-duration:.01ms!important}
}

/* ==========================================================
   V3 — adaptive floating navigation + stacked logo + orbit menu
   ========================================================== */
:root{
  --rv-header-x:max(26px,calc((100vw - 1220px)/2));
  --rv-chrome-ink:#F3EFE7;
  --rv-chrome-halo:rgba(23,23,23,.34);
}

/* No fixed bar. Only two floating controls. */
.site-header,
.site-header.scrolled{
  position:fixed;
  z-index:90;
  inset:0 0 auto 0;
  height:0;
  padding:0;
  display:block;
  background:none!important;
  border:0!important;
  color:inherit;
  backdrop-filter:none!important;
  pointer-events:none;
  transform:translateY(0);
  opacity:1;
  transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .36s ease;
}
.site-header:after,.site-header.scrolled:after{display:none!important}
.site-header.chrome-hidden{transform:translateY(-145px);opacity:0}
.site-header.menu-active{transform:none!important;opacity:1!important}

.brand-stacked{
  position:absolute;
  top:24px;
  left:var(--rv-header-x);
  width:108px;
  height:98px;
  pointer-events:auto;
  z-index:3;
  display:block;
  isolation:isolate;
}
.brand-stacked .brand-halo{
  position:absolute;
  z-index:-1;
  inset:-20px -25px -16px;
  border-radius:50%;
  background:radial-gradient(ellipse at center,var(--rv-chrome-halo) 0%,rgba(23,23,23,.10) 42%,transparent 73%);
  filter:blur(8px);
  opacity:.78;
  transition:background .35s ease,opacity .35s ease;
  pointer-events:none;
}
.brand-stacked img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 2px 12px rgba(0,0,0,.18));
  transition:opacity .36s ease,transform .45s cubic-bezier(.22,1,.36,1);
}
.brand-stacked:hover img{transform:translateY(-2px)}
.brand-on-dark{opacity:1}
.brand-on-light{opacity:0}
.site-header[data-surface="light"]{
  --rv-chrome-ink:#171717;
  --rv-chrome-halo:rgba(243,239,231,.72);
}
.site-header[data-surface="light"] .brand-on-dark{opacity:0}
.site-header[data-surface="light"] .brand-on-light{opacity:1}
.site-header.menu-active{
  --rv-chrome-ink:#F3EFE7;
  --rv-chrome-halo:rgba(23,23,23,.18);
}
.site-header.menu-active .brand-on-dark{opacity:1}
.site-header.menu-active .brand-on-light{opacity:0}

.header-actions{
  position:absolute;
  top:28px;
  right:var(--rv-header-x);
  pointer-events:auto;
  z-index:4;
  display:block;
}

/* Reference-inspired behavior: solid round MENU core + rotating copy orbit. */
.menu-toggle{
  width:108px;
  height:108px;
  border:0;
  border-radius:50%;
  background:transparent;
  padding:0;
  display:block;
  position:relative;
  cursor:pointer;
  color:var(--rv-chrome-ink);
  overflow:visible;
  isolation:isolate;
  transform:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.menu-toggle:hover{background:transparent;border:0;color:var(--rv-chrome-ink);transform:none}
.menu-core{
  position:absolute;
  inset:20px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--rv-gold);
  border:1px solid rgba(23,23,23,.68);
  box-shadow:0 3px 18px rgba(23,23,23,.22),0 0 0 0 rgba(176,138,82,.20);
  transition:transform .34s cubic-bezier(.22,1,.36,1),box-shadow .34s ease,background .3s ease;
  z-index:2;
}
.menu-toggle:hover .menu-core{transform:scale(1.07);box-shadow:0 7px 26px rgba(23,23,23,.26),0 0 0 8px rgba(176,138,82,.10)}
.menu-label{
  font-family:var(--rv-sans);
  font-size:.59rem;
  line-height:1;
  letter-spacing:.17em;
  text-transform:uppercase;
  font-weight:600;
  color:#fff;
  padding-left:.17em;
}
.menu-orbit{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  color:var(--rv-chrome-ink);
  z-index:1;
  animation:rvOrbit 16s linear infinite;
  filter:drop-shadow(0 1px 7px rgba(0,0,0,.18));
}
.menu-orbit text{fill:currentColor;font-family:var(--rv-sans);font-size:7.2px;font-weight:600;letter-spacing:1.72px;text-transform:uppercase}
@keyframes rvOrbit{to{transform:rotate(360deg)}}
body.menu-open .menu-toggle{background:transparent;border:0;color:#F3EFE7}
body.menu-open .menu-core{background:var(--rv-gold);border-color:rgba(23,23,23,.68);color:#fff;transform:none}
body.menu-open .menu-label{color:#fff}
body.menu-open .menu-orbit{color:#F3EFE7}

/* Language belongs to the menu, not the permanent browsing chrome. */
.menu-meta-actions{display:flex;align-items:center;gap:24px}
.menu-meta .lang-toggle{
  border:1px solid rgba(176,138,82,.55);
  color:var(--rv-gold);
  background:transparent;
  padding:8px 12px;
  cursor:pointer;
  font-size:.62rem;
  line-height:1;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}
.menu-meta .lang-toggle:hover{background:var(--rv-gold);color:var(--rv-charcoal);border-color:var(--rv-gold)}

/* Menu still blooms from the trigger but the trigger itself does not morph into a hamburger/X. */
.menu-overlay{clip-path:circle(0 at calc(100% - var(--rv-header-x) - 54px) 82px)}
.menu-overlay.open{clip-path:circle(155% at calc(100% - var(--rv-header-x) - 54px) 82px)}
body[dir="rtl"] .menu-overlay{clip-path:circle(0 at calc(var(--rv-header-x) + 54px) 82px)}
body[dir="rtl"] .menu-overlay.open{clip-path:circle(155% at calc(var(--rv-header-x) + 54px) 82px)}

/* Give the logo/menu local contrast without recreating a bar. */
.site-header[data-surface="dark"] .menu-orbit{text-shadow:0 1px 10px rgba(0,0,0,.48)}
.site-header[data-surface="light"] .menu-orbit{text-shadow:0 1px 8px rgba(243,239,231,.72)}

body[dir="rtl"] .brand-stacked{left:auto;right:var(--rv-header-x)}
body[dir="rtl"] .header-actions{right:auto;left:var(--rv-header-x)}
body[dir="rtl"] .menu-label{padding-left:0;padding-right:.17em}
body[dir="rtl"] .menu-meta-actions{flex-direction:row-reverse}

@media(max-width:980px){
  :root{--rv-header-x:20px}
  .brand-stacked{top:18px;width:96px;height:88px}
  .header-actions{top:20px}
  .menu-toggle{width:96px;height:96px}
  .menu-core{inset:18px}
  .menu-orbit text{font-size:7.3px;letter-spacing:1.55px}
}
@media(max-width:620px){
  :root{--rv-header-x:14px}
  .brand-stacked{top:12px;width:82px;height:75px}
  .header-actions{top:13px}
  .menu-toggle{width:84px;height:84px}
  .menu-core{inset:16px}
  .menu-label{font-size:.52rem}
  .menu-orbit text{font-size:7.5px;letter-spacing:1.4px}
  .site-header.chrome-hidden{transform:translateY(-120px)}
  .menu-meta-actions{width:100%;justify-content:space-between}
}
@media(prefers-reduced-motion:reduce){.menu-orbit{animation:none!important}.site-header{transition-duration:.01ms!important}}

/* ==========================================================
   V4 — official R lockup + fully circular orbit menu
   ========================================================== */
:root{
  --rv-logo-word:#F3EFE7;
  --rv-logo-tag:#C9B79C;
  --rv-logo-shadow:rgba(0,0,0,.34);
  --rv-logo-halo:rgba(23,23,23,.36);
}

/* Official R-mark based vertical lockup. The whole lockup adapts, not only the icon. */
.brand-adaptive{
  position:absolute;
  top:18px;
  left:var(--rv-header-x);
  width:132px;
  height:154px;
  pointer-events:auto;
  z-index:3;
  display:block;
  isolation:isolate;
  color:var(--rv-logo-word);
}
.brand-adaptive .brand-halo{
  position:absolute;
  z-index:-1;
  inset:-15px -22px -11px;
  border-radius:48%;
  background:radial-gradient(ellipse at 48% 42%,var(--rv-logo-halo) 0%,color-mix(in srgb,var(--rv-logo-halo) 58%, transparent) 42%,transparent 74%);
  filter:blur(9px);
  opacity:.8;
  transition:background .32s ease,opacity .32s ease;
  pointer-events:none;
}
.brand-lockup{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  filter:drop-shadow(0 2px 11px var(--rv-logo-shadow));
  transition:filter .32s ease,transform .42s cubic-bezier(.22,1,.36,1);
}
.brand-adaptive:hover .brand-lockup{transform:translateY(-2px)}
.brand-mark{
  position:relative;
  display:block;
  width:72px;
  height:74px;
  margin:0 auto 1px;
}
.brand-mark img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:0;
  transition:opacity .32s ease;
}
.brand-mark .mark-gold{opacity:1}
.brand-wordmark{
  font-family:var(--rv-serif);
  font-size:26px;
  line-height:1;
  letter-spacing:.135em;
  padding-left:.135em;
  font-weight:500;
  color:var(--rv-logo-word);
  transition:color .32s ease;
}
.brand-divider{
  width:92px;
  display:grid;
  grid-template-columns:1fr 6px 1fr;
  align-items:center;
  gap:5px;
  margin:8px 0 7px;
}
.brand-divider i{height:1px;background:var(--rv-gold);display:block}
.brand-divider b{width:5px;height:5px;background:var(--rv-gold);transform:rotate(45deg);display:block}
.brand-tagline{
  font-family:var(--rv-sans);
  font-size:5.9px;
  line-height:1.2;
  letter-spacing:.23em;
  padding-left:.23em;
  white-space:nowrap;
  font-weight:600;
  color:var(--rv-logo-tag);
  transition:color .32s ease;
}

/* Photo surfaces: bright official R + dark local contrast. */
.site-header[data-surface="photo-dark"]{
  --rv-logo-word:#F3EFE7;
  --rv-logo-tag:#C9B79C;
  --rv-logo-halo:rgba(23,23,23,.44);
  --rv-logo-shadow:rgba(0,0,0,.42);
  --rv-chrome-ink:#F3EFE7;
}
.site-header[data-surface="photo-dark"] .brand-mark .mark-gold{opacity:1}
.site-header[data-surface="photo-dark"] .brand-mark .mark-white,
.site-header[data-surface="photo-dark"] .brand-mark .mark-black{opacity:0}

/* Solid dark sections: the mark lifts to white while gold remains in the divider. */
.site-header[data-surface="dark"]{
  --rv-logo-word:#F3EFE7;
  --rv-logo-tag:#C9B79C;
  --rv-logo-halo:rgba(23,23,23,.16);
  --rv-logo-shadow:rgba(0,0,0,.22);
  --rv-chrome-ink:#F3EFE7;
}
.site-header[data-surface="dark"] .brand-mark .mark-gold,
.site-header[data-surface="dark"] .brand-mark .mark-black{opacity:0}
.site-header[data-surface="dark"] .brand-mark .mark-white{opacity:1}

/* Light surfaces: official black R + charcoal wordmark + stone tagline. */
.site-header[data-surface="light"]{
  --rv-logo-word:#171717;
  --rv-logo-tag:#6E685F;
  --rv-logo-halo:rgba(243,239,231,.80);
  --rv-logo-shadow:rgba(243,239,231,.72);
  --rv-chrome-ink:#171717;
}
.site-header[data-surface="light"] .brand-mark .mark-gold,
.site-header[data-surface="light"] .brand-mark .mark-white{opacity:0}
.site-header[data-surface="light"] .brand-mark .mark-black{opacity:1}

/* Menu overlay gets the gold official R treatment regardless of page beneath it. */
.site-header.menu-active{
  --rv-logo-word:#F3EFE7;
  --rv-logo-tag:#C9B79C;
  --rv-logo-halo:rgba(23,23,23,.12);
  --rv-logo-shadow:rgba(0,0,0,.18);
  --rv-chrome-ink:#F3EFE7;
}
.site-header.menu-active .brand-mark .mark-gold{opacity:1!important}
.site-header.menu-active .brand-mark .mark-white,
.site-header.menu-active .brand-mark .mark-black{opacity:0!important}

/* Preloader now starts with the official R, not the gateway symbol. */
.preloader-r-mark{object-fit:contain;filter:drop-shadow(0 12px 24px rgba(0,0,0,.16))}

/* Closed orbit. No dash, no bar above MENU, no oval geometry. */
.menu-toggle{
  width:112px;
  height:112px;
  aspect-ratio:1;
  border-radius:50%;
}
.menu-orbit{
  width:112px;
  height:112px;
  aspect-ratio:1;
  border-radius:50%;
  transform-origin:50% 50%;
}
.menu-orbit-ring{
  fill:none;
  stroke:currentColor;
  stroke-width:1.15;
  opacity:.78;
  vector-effect:non-scaling-stroke;
}
.menu-orbit text{
  font-size:6.85px;
  letter-spacing:1.16px;
  font-weight:600;
}
.menu-core{
  inset:auto;
  left:50%;
  top:50%;
  width:64px;
  height:64px;
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  display:grid;
  place-items:center;
  overflow:hidden;
}
.menu-toggle:hover .menu-core{
  transform:translate(-50%,-50%) scale(1.055);
}
.menu-label{
  display:block;
  width:100%;
  padding:0!important;
  margin:0;
  text-align:center;
  font-size:.60rem;
  line-height:1;
  letter-spacing:.13em;
  text-indent:.13em;
}
body.menu-open .menu-core{transform:translate(-50%,-50%)}

/* V4 RTL positioning for the new lockup. */
body[dir="rtl"] .brand-adaptive{left:auto;right:var(--rv-header-x)}

@media(max-width:980px){
  .brand-adaptive{top:14px;width:116px;height:136px}
  .brand-mark{width:63px;height:65px}
  .brand-wordmark{font-size:23px}
  .brand-divider{width:82px;margin:7px 0 6px}
  .brand-tagline{font-size:5.2px}
  .menu-toggle,.menu-orbit{width:100px;height:100px}
  .menu-core{width:58px;height:58px}
  .menu-orbit text{font-size:6.95px;letter-spacing:1.02px}
}
@media(max-width:620px){
  .brand-adaptive{top:10px;width:98px;height:116px}
  .brand-mark{width:54px;height:56px}
  .brand-wordmark{font-size:20px}
  .brand-divider{width:72px;margin:6px 0 5px}
  .brand-tagline{font-size:4.5px;letter-spacing:.19em;padding-left:.19em}
  .menu-toggle,.menu-orbit{width:88px;height:88px}
  .menu-core{width:51px;height:51px}
  .menu-label{font-size:.53rem}
  .menu-orbit text{font-size:7px;letter-spacing:.84px}
}


/* ==========================================================
   V5 — V3 logo footprint + typography-only circular menu orbit
   ========================================================== */

/* Restore the exact V3 floating-logo envelope while preserving
   the official adaptive R-mark lockup introduced in V4. */
.brand-adaptive{
  top:24px;
  width:108px;
  height:98px;
}
.brand-adaptive .brand-halo{
  inset:-13px -17px -10px;
  filter:blur(8px);
}
.brand-mark{
  width:45px;
  height:46px;
  margin:0 auto 0;
}
.brand-wordmark{
  font-size:20px;
  letter-spacing:.125em;
  padding-left:.125em;
}
.brand-divider{
  width:72px;
  grid-template-columns:1fr 5px 1fr;
  gap:4px;
  margin:5px 0 4px;
}
.brand-divider b{width:4px;height:4px}
.brand-tagline{
  font-size:4.45px;
  letter-spacing:.205em;
  padding-left:.205em;
}

/* Typography is now the orbit itself: no drawn circular line. */
.menu-orbit-ring{display:none!important}
.menu-orbit{
  border:0!important;
  outline:0!important;
  overflow:visible;
}
.menu-orbit text{
  font-size:6.25px;
  letter-spacing:.48px;
  font-weight:600;
  text-rendering:geometricPrecision;
}

/* A true circular centre — no oval/pill impression and no outline. */
.menu-core{
  width:62px;
  height:62px;
  min-width:62px;
  min-height:62px;
  aspect-ratio:1 / 1;
  box-sizing:border-box;
  border:0!important;
  outline:0!important;
  border-radius:50%!important;
  padding:0!important;
}
.menu-label{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  line-height:1;
  transform:translateY(.2px);
}
body.menu-open .menu-core{border:0!important}

@media(max-width:980px){
  .brand-adaptive{top:18px;width:96px;height:88px}
  .brand-mark{width:40px;height:41px}
  .brand-wordmark{font-size:18px}
  .brand-divider{width:64px;margin:4px 0 3px}
  .brand-tagline{font-size:3.9px;letter-spacing:.19em;padding-left:.19em}
  .menu-core{width:56px;height:56px;min-width:56px;min-height:56px}
  .menu-orbit text{font-size:6.45px;letter-spacing:.38px}
}
@media(max-width:620px){
  .brand-adaptive{top:12px;width:82px;height:75px}
  .brand-mark{width:34px;height:35px}
  .brand-wordmark{font-size:15.5px}
  .brand-divider{width:55px;margin:3px 0 3px;gap:3px}
  .brand-divider b{width:3px;height:3px}
  .brand-tagline{font-size:3.35px;letter-spacing:.17em;padding-left:.17em}
  .menu-core{width:49px;height:49px;min-width:49px;min-height:49px}
  .menu-orbit text{font-size:6.7px;letter-spacing:.30px}
}

/* ==========================================================
   V6 — reduced menu control + visible footer lockup
   ========================================================== */
:root{
  --rv-menu-size:92px;
  --rv-menu-half:46px;
  --rv-menu-center-y:74px;
}

/* Scale the whole control together: rotating type + centre circle. */
.menu-toggle,
.menu-orbit{
  width:var(--rv-menu-size);
  height:var(--rv-menu-size);
}
.menu-core{
  width:50px;
  height:50px;
  min-width:50px;
  min-height:50px;
}
.menu-label{
  font-size:.53rem;
  letter-spacing:.11em;
  text-indent:.11em;
}
.menu-orbit text{
  font-size:6.1px;
  letter-spacing:.34px;
}

/* Keep the menu reveal anchored to the visual centre of the smaller button. */
.menu-overlay{clip-path:circle(0 at calc(100% - var(--rv-header-x) - var(--rv-menu-half)) var(--rv-menu-center-y))}
.menu-overlay.open{clip-path:circle(155% at calc(100% - var(--rv-header-x) - var(--rv-menu-half)) var(--rv-menu-center-y))}
body[dir="rtl"] .menu-overlay{clip-path:circle(0 at calc(var(--rv-header-x) + var(--rv-menu-half)) var(--rv-menu-center-y))}
body[dir="rtl"] .menu-overlay.open{clip-path:circle(155% at calc(var(--rv-header-x) + var(--rv-menu-half)) var(--rv-menu-center-y))}

/* Footer lockup: transparent asset with gold wordmark + sand tagline on charcoal. */
.footer-top img{
  width:180px;
  height:auto;
  filter:drop-shadow(0 2px 9px rgba(0,0,0,.18));
}

/* Strengthen the small hero-bottom copy so it does not disappear into photography. */
.hero-foot{
  color:rgba(243,239,231,.82);
  text-shadow:0 1px 10px rgba(0,0,0,.52);
}
.hero-foot .scroll-note{color:var(--rv-sand)}

@media(max-width:980px){
  :root{
    --rv-menu-size:84px;
    --rv-menu-half:42px;
    --rv-menu-center-y:62px;
  }
  .menu-core{width:46px;height:46px;min-width:46px;min-height:46px}
  .menu-label{font-size:.50rem}
  .menu-orbit text{font-size:6.25px;letter-spacing:.28px}
}
@media(max-width:620px){
  :root{
    --rv-menu-size:76px;
    --rv-menu-half:38px;
    --rv-menu-center-y:51px;
  }
  .menu-core{width:42px;height:42px;min-width:42px;min-height:42px}
  .menu-label{font-size:.47rem}
  .menu-orbit text{font-size:6.45px;letter-spacing:.20px}
}

/* ==========================================================
   V7 — exact compact MENU sizing + legacy bar removal
   ========================================================== */
:root{
  --rv-menu-size:79px;
  --rv-menu-half:39.5px;
  --rv-menu-center-y:67.5px;
}

/* Exact requested outer control size. */
.menu-toggle,
.menu-orbit{
  width:var(--rv-menu-size)!important;
  height:var(--rv-menu-size)!important;
  min-width:var(--rv-menu-size);
  min-height:var(--rv-menu-size);
  aspect-ratio:1 / 1;
  border-radius:50%;
}

/* Remove the obsolete hamburger rule that was creating the line above MENU. */
.menu-toggle span,
.menu-core,
.menu-label{
  border-top:0!important;
}
.menu-toggle > span{
  margin:0;
}

/* Compact true-circle core, perfectly concentric with the word orbit. */
.menu-core{
  left:50%;
  top:50%;
  inset:auto;
  width:45px;
  height:45px;
  min-width:45px;
  min-height:45px;
  aspect-ratio:1 / 1;
  transform:translate(-50%,-50%);
  border-radius:50%!important;
  display:grid;
  place-items:center;
  margin:0!important;
}
.menu-toggle:hover .menu-core{
  transform:translate(-50%,-50%) scale(1.045);
}
body.menu-open .menu-core{
  transform:translate(-50%,-50%);
}

/* Optical centering: no inherited width/margins, no top rule, balanced tracking. */
.menu-label{
  width:100%!important;
  height:100%;
  margin:0!important;
  padding:0!important;
  border:0!important;
  display:grid!important;
  place-items:center;
  text-align:center;
  font-size:.48rem;
  line-height:1;
  letter-spacing:.10em;
  text-indent:.10em;
  transform:none;
}

/* The rotating lettering itself is the connected circle — no drawn ring. */
.menu-orbit{
  inset:0;
  border:0!important;
  outline:0!important;
  overflow:visible;
  transform-origin:50% 50%;
}
.menu-orbit-ring{display:none!important}
.menu-orbit text{
  font-size:8.0px;
  letter-spacing:.22px;
  font-weight:600;
  text-rendering:geometricPrecision;
}

/* Keep the reveal origin centered on the new exact control dimensions. */
.menu-overlay{clip-path:circle(0 at calc(100% - var(--rv-header-x) - var(--rv-menu-half)) var(--rv-menu-center-y))}
.menu-overlay.open{clip-path:circle(155% at calc(100% - var(--rv-header-x) - var(--rv-menu-half)) var(--rv-menu-center-y))}
body[dir="rtl"] .menu-overlay{clip-path:circle(0 at calc(var(--rv-header-x) + var(--rv-menu-half)) var(--rv-menu-center-y))}
body[dir="rtl"] .menu-overlay.open{clip-path:circle(155% at calc(var(--rv-header-x) + var(--rv-menu-half)) var(--rv-menu-center-y))}

@media(max-width:980px){
  :root{
    --rv-menu-size:71px;
    --rv-menu-half:35.5px;
    --rv-menu-center-y:55.5px;
  }
  .menu-core{width:40px;height:40px;min-width:40px;min-height:40px}
  .menu-label{font-size:.445rem;letter-spacing:.09em;text-indent:.09em}
  .menu-orbit text{font-size:8.25px;letter-spacing:.18px}
}

@media(max-width:620px){
  :root{
    --rv-menu-size:63px;
    --rv-menu-half:31.5px;
    --rv-menu-center-y:44.5px;
  }
  .menu-core{width:35px;height:35px;min-width:35px;min-height:35px}
  .menu-label{font-size:.405rem;letter-spacing:.075em;text-indent:.075em}
  .menu-orbit text{font-size:8.55px;letter-spacing:.12px}
}

/* V7 final geometry: requested dimensions apply to the actual gold MENU button. */
:root{
  --rv-menu-size:108px;
  --rv-menu-half:54px;
  --rv-menu-center-y:82px;
}
.menu-toggle,
.menu-orbit{
  width:108px!important;
  height:108px!important;
  min-width:108px;
  min-height:108px;
}

/* Fully defeat the obsolete `.menu-toggle span` hamburger rule. */
.menu-toggle > .menu-core{
  width:79px!important;
  height:79px!important;
  min-width:79px!important;
  min-height:79px!important;
  margin:0!important;
  display:grid!important;
  border:0!important;
  border-top:0!important;
  border-radius:50%!important;
  box-sizing:border-box;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
}
.menu-toggle > .menu-core > .menu-label{
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-top:0!important;
  line-height:1!important;
  text-align:center!important;
  font-size:.54rem;
  letter-spacing:.105em;
  text-indent:.105em;
  transform:none!important;
}
.menu-toggle:hover > .menu-core{transform:translate(-50%,-50%) scale(1.035)}
body.menu-open .menu-toggle > .menu-core{transform:translate(-50%,-50%)}

/* The typography is the only outer circle and hugs the MENU core concentrically. */
.menu-orbit-ring{display:none!important}
.menu-orbit text{
  font-size:7.05px;
  letter-spacing:.15px;
  font-weight:600;
}

.menu-overlay{clip-path:circle(0 at calc(100% - var(--rv-header-x) - var(--rv-menu-half)) var(--rv-menu-center-y))}
.menu-overlay.open{clip-path:circle(155% at calc(100% - var(--rv-header-x) - var(--rv-menu-half)) var(--rv-menu-center-y))}
body[dir="rtl"] .menu-overlay{clip-path:circle(0 at calc(var(--rv-header-x) + var(--rv-menu-half)) var(--rv-menu-center-y))}
body[dir="rtl"] .menu-overlay.open{clip-path:circle(155% at calc(var(--rv-header-x) + var(--rv-menu-half)) var(--rv-menu-center-y))}

@media(max-width:980px){
  :root{
    --rv-menu-size:96px;
    --rv-menu-half:48px;
    --rv-menu-center-y:68px;
  }
  .menu-toggle,.menu-orbit{width:96px!important;height:96px!important;min-width:96px;min-height:96px}
  .menu-toggle > .menu-core{width:71px!important;height:71px!important;min-width:71px!important;min-height:71px!important}
  .menu-toggle > .menu-core > .menu-label{font-size:.505rem;letter-spacing:.095em;text-indent:.095em}
  .menu-orbit text{font-size:7.35px;letter-spacing:.12px}
}
@media(max-width:620px){
  :root{
    --rv-menu-size:84px;
    --rv-menu-half:42px;
    --rv-menu-center-y:55px;
  }
  .menu-toggle,.menu-orbit{width:84px!important;height:84px!important;min-width:84px;min-height:84px}
  .menu-toggle > .menu-core{width:63px!important;height:63px!important;min-width:63px!important;min-height:63px!important}
  .menu-toggle > .menu-core > .menu-label{font-size:.465rem;letter-spacing:.085em;text-indent:.085em}
  .menu-orbit text{font-size:7.75px;letter-spacing:.08px}
}

/* V8 — smaller MENU control, preserving V7 behavior and concentric typography. */
:root{
  --rv-menu-size:94px;
  --rv-menu-half:47px;
  --rv-menu-center-y:75px;
}
.menu-toggle,
.menu-orbit{
  width:94px!important;
  height:94px!important;
  min-width:94px!important;
  min-height:94px!important;
}
.menu-toggle > .menu-core{
  width:69px!important;
  height:69px!important;
  min-width:69px!important;
  min-height:69px!important;
}
.menu-toggle > .menu-core > .menu-label{
  font-size:.49rem;
  letter-spacing:.095em;
  text-indent:.095em;
}
.menu-orbit text{
  font-size:7.55px;
  letter-spacing:.10px;
}

@media(max-width:980px){
  :root{
    --rv-menu-size:84px;
    --rv-menu-half:42px;
    --rv-menu-center-y:62px;
  }
  .menu-toggle,.menu-orbit{
    width:84px!important;
    height:84px!important;
    min-width:84px!important;
    min-height:84px!important;
  }
  .menu-toggle > .menu-core{
    width:61px!important;
    height:61px!important;
    min-width:61px!important;
    min-height:61px!important;
  }
  .menu-toggle > .menu-core > .menu-label{
    font-size:.455rem;
    letter-spacing:.085em;
    text-indent:.085em;
  }
  .menu-orbit text{
    font-size:7.9px;
    letter-spacing:.06px;
  }
}

@media(max-width:620px){
  :root{
    --rv-menu-size:74px;
    --rv-menu-half:37px;
    --rv-menu-center-y:50px;
  }
  .menu-toggle,.menu-orbit{
    width:74px!important;
    height:74px!important;
    min-width:74px!important;
    min-height:74px!important;
  }
  .menu-toggle > .menu-core{
    width:53px!important;
    height:53px!important;
    min-width:53px!important;
    min-height:53px!important;
  }
  .menu-toggle > .menu-core > .menu-label{
    font-size:.42rem;
    letter-spacing:.075em;
    text-indent:.075em;
  }
  .menu-orbit text{
    font-size:8.2px;
    letter-spacing:.02px;
  }
}


/* V9 — further compact MENU refinement. */
:root{--rv-menu-size:82px;--rv-menu-half:41px;--rv-menu-center-y:69px}
.menu-toggle,.menu-orbit{width:82px!important;height:82px!important;min-width:82px!important;min-height:82px!important}
.menu-toggle > .menu-core{width:59px!important;height:59px!important;min-width:59px!important;min-height:59px!important}
.menu-toggle > .menu-core > .menu-label{font-size:.47rem;letter-spacing:.085em;text-indent:.085em}
.menu-orbit text{font-size:7.65px;letter-spacing:.06px}
@media(max-width:980px){
  :root{--rv-menu-size:72px;--rv-menu-half:36px;--rv-menu-center-y:56px}
  .menu-toggle,.menu-orbit{width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important}
  .menu-toggle > .menu-core{width:51px!important;height:51px!important;min-width:51px!important;min-height:51px!important}
  .menu-toggle > .menu-core > .menu-label{font-size:.435rem;letter-spacing:.075em;text-indent:.075em}
  .menu-orbit text{font-size:8px;letter-spacing:.03px}
}
@media(max-width:620px){
  :root{--rv-menu-size:62px;--rv-menu-half:31px;--rv-menu-center-y:44px}
  .menu-toggle,.menu-orbit{width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important}
  .menu-toggle > .menu-core{width:43px!important;height:43px!important;min-width:43px!important;min-height:43px!important}
  .menu-toggle > .menu-core > .menu-label{font-size:.39rem;letter-spacing:.065em;text-indent:.065em}
  .menu-orbit text{font-size:8.35px;letter-spacing:0}
}

/* V11 content architecture */
.studio-section{position:relative;overflow:hidden}.studio-section:before{content:"RAEVIA";position:absolute;right:-2vw;top:14px;font-family:var(--rv-serif);font-size:clamp(7rem,18vw,16rem);line-height:.8;color:rgba(23,23,23,.035);pointer-events:none;white-space:nowrap}
.studio-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(23,23,23,.18);border-left:1px solid rgba(23,23,23,.18);margin-top:26px;position:relative;z-index:1}.studio-card{padding:34px 30px 38px;border-right:1px solid rgba(23,23,23,.18);border-bottom:1px solid rgba(23,23,23,.18);min-height:300px}.studio-card .rv-eyebrow{color:#6f6559}.studio-card h3{font-family:var(--rv-serif);font-size:clamp(1.75rem,2.5vw,2.55rem);font-weight:400;line-height:1.1;margin:56px 0 16px;max-width:390px}.studio-card p{color:#5c554d;max-width:430px;font-size:.92rem}.principles-wrap{margin-top:78px;position:relative;z-index:1}.principles-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:28px}.principles-head h3{font-family:var(--rv-serif);font-size:clamp(2.25rem,4vw,4.25rem);font-weight:400;line-height:1.02;max-width:720px}.principles-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(23,23,23,.2)}.principle{padding:30px 24px 8px 0;border-right:1px solid rgba(23,23,23,.18);min-height:255px}.principle:not(:first-child){padding-left:24px}.principle:last-child{border-right:0}.principle>span{font-size:.68rem;color:#756a5d;letter-spacing:.16em}.principle h4{font-family:var(--rv-serif);font-size:1.5rem;font-weight:400;margin:38px 0 12px}.principle p{font-size:.84rem;color:#625a51;margin:0}
.design-deliverables{margin-top:74px;padding-top:42px;border-top:1px solid rgba(243,239,231,.18);display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}.design-deliverables h3{font-family:var(--rv-serif);font-size:clamp(2.3rem,4vw,4.2rem);font-weight:400;line-height:1.02;color:var(--rv-ivory);margin:10px 0 0}.deliverable-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(243,239,231,.16);border-left:1px solid rgba(243,239,231,.16)}.deliverable{padding:22px 22px 24px;border-right:1px solid rgba(243,239,231,.16);border-bottom:1px solid rgba(243,239,231,.16);color:rgba(243,239,231,.76);font-size:.84rem}.deliverable span{display:block;color:var(--rv-gold);font-size:.64rem;letter-spacing:.15em;margin-bottom:12px}
@media(max-width:980px){.studio-grid{grid-template-columns:1fr}.studio-card{min-height:auto}.studio-card h3{margin-top:30px}.principles-grid{grid-template-columns:1fr 1fr}.principle:nth-child(2){border-right:0}.design-deliverables{grid-template-columns:1fr;gap:34px}.principles-head{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.principles-grid{grid-template-columns:1fr}.principle,.principle:not(:first-child){padding:26px 0;border-right:0;border-bottom:1px solid rgba(23,23,23,.18);min-height:auto}.deliverable-grid{grid-template-columns:1fr}.studio-card{padding:28px 22px}.principles-wrap{margin-top:56px}.design-deliverables{margin-top:56px}}



/* V10 — reference-matched MENU footprint: 72 × 72 px total. */
:root{--rv-menu-size:72px;--rv-menu-half:36px;--rv-menu-center-y:64px}
.menu-toggle,.menu-orbit{width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important;max-width:72px!important;max-height:72px!important;aspect-ratio:1/1}
.menu-toggle > .menu-core{width:51px!important;height:51px!important;min-width:51px!important;min-height:51px!important;max-width:51px!important;max-height:51px!important}
.menu-toggle > .menu-core > .menu-label{font-size:.435rem;letter-spacing:.075em;text-indent:.075em}
.menu-orbit text{font-size:8px;letter-spacing:.03px}
.menu-overlay{clip-path:circle(0 at calc(100% - var(--rv-header-x) - 36px) 64px)}
.menu-overlay.open{clip-path:circle(155% at calc(100% - var(--rv-header-x) - 36px) 64px)}
body[dir="rtl"] .menu-overlay{clip-path:circle(0 at calc(var(--rv-header-x) + 36px) 64px)}
body[dir="rtl"] .menu-overlay.open{clip-path:circle(155% at calc(var(--rv-header-x) + 36px) 64px)}
@media(max-width:980px){
:root{--rv-menu-size:72px;--rv-menu-half:36px;--rv-menu-center-y:56px}
.menu-toggle,.menu-orbit{width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important;max-width:72px!important;max-height:72px!important}
.menu-toggle > .menu-core{width:51px!important;height:51px!important;min-width:51px!important;min-height:51px!important;max-width:51px!important;max-height:51px!important}
.menu-toggle > .menu-core > .menu-label{font-size:.435rem;letter-spacing:.075em;text-indent:.075em}
.menu-orbit text{font-size:8px;letter-spacing:.03px}
.menu-overlay{clip-path:circle(0 at calc(100% - var(--rv-header-x) - 36px) 56px)}.menu-overlay.open{clip-path:circle(155% at calc(100% - var(--rv-header-x) - 36px) 56px)}body[dir="rtl"] .menu-overlay{clip-path:circle(0 at calc(var(--rv-header-x) + 36px) 56px)}body[dir="rtl"] .menu-overlay.open{clip-path:circle(155% at calc(var(--rv-header-x) + 36px) 56px)}}
@media(max-width:620px){
:root{--rv-menu-size:72px;--rv-menu-half:36px;--rv-menu-center-y:49px}
.menu-toggle,.menu-orbit{width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important;max-width:72px!important;max-height:72px!important}
.menu-toggle > .menu-core{width:51px!important;height:51px!important;min-width:51px!important;min-height:51px!important;max-width:51px!important;max-height:51px!important}
.menu-toggle > .menu-core > .menu-label{font-size:.435rem;letter-spacing:.075em;text-indent:.075em}
.menu-orbit text{font-size:8px;letter-spacing:.03px}
.menu-overlay{clip-path:circle(0 at calc(100% - var(--rv-header-x) - 36px) 49px)}.menu-overlay.open{clip-path:circle(155% at calc(100% - var(--rv-header-x) - 36px) 49px)}body[dir="rtl"] .menu-overlay{clip-path:circle(0 at calc(var(--rv-header-x) + 36px) 49px)}body[dir="rtl"] .menu-overlay.open{clip-path:circle(155% at calc(var(--rv-header-x) + 36px) 49px)}}


/* V11.1 — mobile-safe preview layer. Keeps V10 appearance but removes fragile mobile-only failure points. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{overscroll-behavior-y:none;min-width:0}
img,svg{max-width:100%}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.preloader{animation:rvMobilePreloaderFailSafe .01s 4.2s forwards}
@keyframes rvMobilePreloaderFailSafe{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(max-width:768px){
  :root{--rv-header-x:max(14px,env(safe-area-inset-left));}
  .site-header{height:84px!important;padding-left:max(14px,env(safe-area-inset-left))!important;padding-right:max(14px,env(safe-area-inset-right))!important;padding-top:env(safe-area-inset-top);box-sizing:content-box}
  .brand-lockup{transform-origin:left center}
  body[dir="rtl"] .brand-lockup{transform-origin:right center}
  .menu-toggle{flex:0 0 72px!important;touch-action:manipulation}
  .menu-overlay,.menu-overlay.open,body[dir="rtl"] .menu-overlay,body[dir="rtl"] .menu-overlay.open{
    clip-path:none!important;
  }
  .menu-overlay{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .34s ease,transform .34s ease,visibility .34s ease;height:100dvh;min-height:100svh}
  .menu-overlay.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .menu-content{min-height:100%;height:auto;padding-top:calc(112px + env(safe-area-inset-top));padding-bottom:calc(26px + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}
  .main-nav a{font-size:clamp(2.15rem,10vw,3.15rem);line-height:1.05}
  .menu-watermark{font-size:36vw;opacity:.75}
  .hero{min-height:100svh;min-height:100dvh}
  .hero-content{padding-top:calc(118px + env(safe-area-inset-top));padding-bottom:110px}
  .hero h1{font-size:clamp(3rem,15.2vw,4.5rem);line-height:.92}
  .hero-copy{max-width:34rem}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;max-width:320px}
  .hero-actions .btn{width:100%;justify-content:center}
  .section{overflow:hidden}
  .container{width:min(calc(100% - 28px),1220px)}
  .preloader{height:100dvh;min-height:100svh}
  .preloader-inner{width:min(330px,76vw)}
  .preloader-symbol{width:86px;height:86px}
  .preloader-wordmark{font-size:2.3rem}
  .preloader-tagline{font-size:.54rem;letter-spacing:.22em}
}
@media(max-width:420px){
  .site-header{height:78px!important}
  .brand-lockup{transform:scale(.92)}
  body[dir="rtl"] .brand-lockup{transform:scale(.92)}
  .menu-toggle,.menu-orbit{width:68px!important;height:68px!important;min-width:68px!important;min-height:68px!important;max-width:68px!important;max-height:68px!important}
  .menu-toggle>.menu-core{width:49px!important;height:49px!important;min-width:49px!important;min-height:49px!important;max-width:49px!important;max-height:49px!important}
  .menu-orbit text{font-size:8.1px}
  .hero-content{padding-top:112px}
  .hero h1{font-size:clamp(2.85rem,15vw,4rem)}
  .section-heading h2,.manifesto-copy h2,.contact-intro h2,.story-grid h2{font-size:clamp(2.25rem,11vw,3rem)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .preloader{animation:rvMobilePreloaderFailSafe .01s .4s forwards}
}


/* V13 — RAEVIA Interactive Project Wizard / Project Estimator */
.project-wizard{position:relative;overflow:hidden;padding-top:clamp(112px,12vw,160px);padding-bottom:clamp(90px,10vw,140px);min-height:100vh}
.project-wizard:before{content:"R";position:absolute;right:-.08em;top:.12em;font-family:var(--rv-serif);font-size:clamp(20rem,48vw,52rem);line-height:.7;color:rgba(176,138,82,.05);pointer-events:none}
body[dir="rtl"] .project-wizard:before{right:auto;left:-.08em}
.wizard-wrap{position:relative;z-index:2}.wizard-app{max-width:1180px;margin:0 auto}.wizard-stage{opacity:1;transform:none;transition:opacity .32s ease,transform .32s ease}.wizard-stage.is-entering{opacity:0;transform:translateY(12px)}
.wizard-entry-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(42px,7vw,100px);align-items:end;margin-bottom:48px}.wizard-eyebrow{font:600 .62rem/1 var(--rv-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--rv-gold)}.wizard-entry-head h2,.wizard-result h2,.wizard-thanks h2{font-family:var(--rv-serif);font-weight:400;color:var(--rv-ivory);font-size:clamp(3.3rem,7vw,7.1rem);line-height:.91;letter-spacing:-.045em;margin:14px 0 20px}.wizard-entry-head p{color:rgba(243,239,231,.68);max-width:620px;font-size:clamp(.95rem,1.25vw,1.08rem);line-height:1.8}.wizard-entry-note{border-top:1px solid rgba(243,239,231,.18);padding-top:22px;color:rgba(243,239,231,.62);font-size:.78rem;line-height:1.8}
.wizard-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wizard-path-card{appearance:none;text-align:left;border:1px solid rgba(243,239,231,.2);background:rgba(243,239,231,.04);color:var(--rv-ivory);min-height:330px;padding:34px;cursor:pointer;position:relative;overflow:hidden;transition:.3s ease}.wizard-path-card:hover{transform:translateY(-5px);border-color:rgba(176,138,82,.8);background:rgba(176,138,82,.08)}body[dir="rtl"] .wizard-path-card{text-align:right}.wizard-path-num{display:block;font:600 .58rem/1 var(--rv-sans);letter-spacing:.18em;color:var(--rv-gold);margin-bottom:90px}.wizard-path-card h3{font-family:var(--rv-serif);font-size:clamp(2.1rem,3vw,3.4rem);font-weight:400;margin:0 0 10px}.wizard-path-card p{font-size:.84rem;color:rgba(243,239,231,.62);line-height:1.75;max-width:470px;margin:0 0 28px}.wizard-path-cta{position:absolute;bottom:30px;left:34px;display:flex;align-items:center;gap:10px;font:600 .62rem/1 var(--rv-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rv-gold)}body[dir="rtl"] .wizard-path-cta{left:auto;right:34px}.wizard-path-card:after{content:"↗";position:absolute;right:28px;top:25px;font-family:var(--rv-serif);font-size:2rem;color:rgba(176,138,82,.65)}body[dir="rtl"] .wizard-path-card:after{right:auto;left:28px;transform:scaleX(-1)}
.wizard-panel{background:var(--rv-ivory);color:var(--rv-charcoal);box-shadow:0 28px 90px rgba(0,0,0,.18)}.wizard-progress{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:20px 28px;border-bottom:1px solid rgba(23,23,23,.12)}.wizard-progress-label,.wizard-step-count{font:600 .58rem/1 var(--rv-sans);letter-spacing:.12em;text-transform:uppercase;color:#786f64;white-space:nowrap}.wizard-progress-track{height:2px;background:rgba(23,23,23,.1);position:relative;overflow:hidden}.wizard-progress-fill{position:absolute;inset:0 auto 0 0;background:var(--rv-gold);transition:width .35s ease}body[dir="rtl"] .wizard-progress-fill{inset:0 0 0 auto}.wizard-panel-body{padding:clamp(30px,5vw,62px)}.wizard-question-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:36px;align-items:end;margin-bottom:34px}.wizard-question-head h3{font-family:var(--rv-serif);font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:.95;letter-spacing:-.035em;margin:8px 0 0}.wizard-question-head p{color:#6d645a;line-height:1.75;font-size:.82rem;margin:0}.wizard-kicker{font:600 .6rem/1 var(--rv-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--rv-gold)}
.wizard-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wizard-options.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-option{appearance:none;border:1px solid rgba(23,23,23,.16);background:rgba(255,255,255,.34);padding:22px;text-align:left;color:var(--rv-charcoal);cursor:pointer;min-height:132px;position:relative;transition:.24s ease}.wizard-option:hover{border-color:rgba(176,138,82,.75);transform:translateY(-2px)}body[dir="rtl"] .wizard-option{text-align:right}.wizard-option.selected{border-color:var(--rv-gold);background:#eee4d6;box-shadow:inset 0 0 0 1px var(--rv-gold)}.wizard-option.selected:after{content:"✓";position:absolute;right:16px;top:14px;width:24px;height:24px;border-radius:50%;background:var(--rv-gold);color:var(--rv-charcoal);display:grid;place-items:center;font-size:.72rem;font-weight:700}body[dir="rtl"] .wizard-option.selected:after{right:auto;left:16px}.wizard-option-code{font:600 .55rem/1 var(--rv-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--rv-gold);display:block;margin-bottom:28px}.wizard-option h4{font-family:var(--rv-serif);font-size:1.55rem;font-weight:400;line-height:1.05;margin:0 0 10px}.wizard-option p{font-size:.73rem;line-height:1.65;color:#6c6358;margin:0}.wizard-option .price{display:block;font:600 .62rem/1.45 var(--rv-sans);letter-spacing:.04em;color:#4e473f;margin-top:16px}.wizard-option.recommended{background:var(--rv-charcoal);color:var(--rv-ivory);border-color:var(--rv-gold)}.wizard-option.recommended p,.wizard-option.recommended .price{color:rgba(243,239,231,.68)}.wizard-badge{display:inline-flex;border:1px solid rgba(176,138,82,.7);color:var(--rv-gold);padding:6px 8px;border-radius:999px;font:600 .5rem/1 var(--rv-sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px}
.wizard-openbook{margin-top:18px;border:1px solid rgba(176,138,82,.55);background:var(--rv-charcoal);color:var(--rv-ivory);padding:26px;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;transition:.25s ease}.wizard-openbook:hover,.wizard-openbook.selected{border-color:var(--rv-gold);box-shadow:0 20px 55px rgba(23,23,23,.14)}.wizard-openbook h4{font-family:var(--rv-serif);font-size:2rem;font-weight:400;margin:4px 0 8px}.wizard-openbook p{color:rgba(243,239,231,.62);font-size:.75rem;line-height:1.7;margin:0;max-width:700px}.wizard-openbook-formula{text-align:right;color:var(--rv-gold);font:600 .64rem/1.6 var(--rv-sans);letter-spacing:.04em;max-width:250px}body[dir="rtl"] .wizard-openbook-formula{text-align:left}
.wizard-multiselect{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.wizard-chip{appearance:none;border:1px solid rgba(23,23,23,.15);background:rgba(255,255,255,.32);padding:15px 16px;text-align:left;color:#504940;cursor:pointer;font:500 .7rem/1.45 var(--rv-sans);transition:.2s}body[dir="rtl"] .wizard-chip{text-align:right}.wizard-chip:hover{border-color:rgba(176,138,82,.7)}.wizard-chip.selected{background:var(--rv-charcoal);color:var(--rv-ivory);border-color:var(--rv-charcoal)}.wizard-chip.selected:before{content:"✓ ";color:var(--rv-gold)}
.wizard-number-wrap{max-width:620px}.wizard-number-label{display:block;font:600 .6rem/1 var(--rv-sans);letter-spacing:.12em;text-transform:uppercase;color:#766c61;margin-bottom:12px}.wizard-number-line{display:flex;align-items:center;border-bottom:1px solid rgba(23,23,23,.35);padding-bottom:10px}.wizard-number-line input{width:100%;border:0;background:transparent;outline:0;font-family:var(--rv-serif);font-size:clamp(3.5rem,8vw,7rem);line-height:1;color:var(--rv-charcoal);padding:0}.wizard-number-line span{font:600 .72rem/1 var(--rv-sans);letter-spacing:.08em;text-transform:uppercase;color:#756b60}.wizard-helper{margin-top:16px;color:#786f65;font-size:.72rem;line-height:1.7;max-width:720px}.wizard-error{margin-top:12px;color:#8a3c2d;font-size:.68rem;min-height:1em}.wizard-tech-groups{display:grid;grid-template-columns:1fr 1fr;gap:22px}.wizard-tech-group{border-top:1px solid rgba(23,23,23,.16);padding-top:18px}.wizard-tech-group h4{font-family:var(--rv-serif);font-size:1.5rem;font-weight:400;margin:0 0 14px}.wizard-tech-group .wizard-chip{width:100%;margin-bottom:7px}
.wizard-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:22px 28px;border-top:1px solid rgba(23,23,23,.12)}.wizard-controls-right{display:flex;gap:10px;margin-left:auto}body[dir="rtl"] .wizard-controls-right{margin-left:0;margin-right:auto}.wizard-btn{appearance:none;border:1px solid rgba(23,23,23,.22);background:transparent;color:var(--rv-charcoal);min-height:46px;padding:0 20px;cursor:pointer;font:600 .62rem/1 var(--rv-sans);letter-spacing:.11em;text-transform:uppercase;transition:.2s}.wizard-btn:hover{border-color:var(--rv-gold);color:#6d5331}.wizard-btn.primary{background:var(--rv-gold);border-color:var(--rv-gold);color:var(--rv-charcoal)}.wizard-btn.primary:hover{background:#9f7844}.wizard-btn:disabled{opacity:.38;cursor:not-allowed;transform:none}.wizard-btn.dark{background:var(--rv-charcoal);border-color:var(--rv-charcoal);color:var(--rv-ivory)}
.wizard-result{padding:clamp(38px,6vw,72px);background:var(--rv-charcoal);color:var(--rv-ivory);position:relative;overflow:hidden}.wizard-result:after{content:"R";position:absolute;right:-.05em;bottom:-.22em;font-family:var(--rv-serif);font-size:clamp(16rem,34vw,34rem);line-height:.8;color:rgba(176,138,82,.06);pointer-events:none}body[dir="rtl"] .wizard-result:after{right:auto;left:-.05em}.wizard-result-inner{position:relative;z-index:1}.wizard-result h2{font-size:clamp(3rem,6vw,6rem);max-width:800px}.wizard-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(243,239,231,.13);margin:38px 0}.wizard-summary-item{background:var(--rv-charcoal);padding:18px}.wizard-summary-item small{display:block;font:600 .52rem/1 var(--rv-sans);letter-spacing:.12em;text-transform:uppercase;color:rgba(243,239,231,.42);margin-bottom:8px}.wizard-summary-item strong{font-family:var(--rv-serif);font-size:1.25rem;font-weight:400;color:var(--rv-ivory)}.wizard-estimate{border-top:1px solid rgba(243,239,231,.18);padding-top:30px;margin-top:20px}.wizard-estimate-label{font:600 .6rem/1 var(--rv-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--rv-gold)}.wizard-estimate-value{font-family:var(--rv-serif);font-size:clamp(2.9rem,7vw,7rem);line-height:.95;letter-spacing:-.04em;color:var(--rv-ivory);margin:12px 0 18px}.wizard-estimate p{max-width:760px;color:rgba(243,239,231,.62);font-size:.78rem;line-height:1.75}.wizard-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.wizard-result .wizard-btn{border-color:rgba(243,239,231,.28);color:var(--rv-ivory)}.wizard-result .wizard-btn.primary{color:var(--rv-charcoal);border-color:var(--rv-gold)}
.wizard-lead{background:var(--rv-ivory);padding:clamp(30px,5vw,58px)}.wizard-lead-head{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:28px}.wizard-lead h3{font-family:var(--rv-serif);font-size:clamp(2.4rem,4.5vw,4.5rem);font-weight:400;line-height:.96;margin:8px 0 0}.wizard-lead-head p{color:#6d645a;font-size:.8rem;line-height:1.75;align-self:end}.wizard-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wizard-field{display:flex;flex-direction:column;gap:8px}.wizard-field.full{grid-column:1/-1}.wizard-field label{font:600 .56rem/1 var(--rv-sans);letter-spacing:.12em;text-transform:uppercase;color:#756b60}.wizard-field input,.wizard-field select,.wizard-field textarea{width:100%;border:1px solid rgba(23,23,23,.17);background:rgba(255,255,255,.4);padding:14px 15px;font:500 .78rem/1.5 var(--rv-sans);color:var(--rv-charcoal);outline:none;border-radius:0}.wizard-field textarea{min-height:110px;resize:vertical}.wizard-field input:focus,.wizard-field select:focus,.wizard-field textarea:focus{border-color:var(--rv-gold)}.wizard-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.wizard-form-error{grid-column:1/-1;color:#8a3c2d;font-size:.68rem;min-height:1em}
.wizard-thanks{text-align:center;padding:clamp(60px,10vw,120px) 28px;background:var(--rv-charcoal);color:var(--rv-ivory)}.wizard-thanks h2{margin-left:auto;margin-right:auto}.wizard-thanks p{max-width:650px;margin:0 auto 30px;color:rgba(243,239,231,.65);line-height:1.8}.wizard-thanks .wizard-btn{color:var(--rv-charcoal)}
.wizard-disclaimer{max-width:1180px;margin:22px auto 0;border-top:1px solid rgba(243,239,231,.16);padding-top:18px;color:rgba(243,239,231,.45);font-size:.62rem;line-height:1.7}.wizard-disclaimer strong{color:rgba(243,239,231,.7);font-weight:600}.wizard-review-note{margin-top:24px;padding:18px;border-left:2px solid var(--rv-gold);background:rgba(176,138,82,.06);font-size:.72rem;line-height:1.7;color:#655c51}body[dir="rtl"] .wizard-review-note{border-left:0;border-right:2px solid var(--rv-gold)}
@media(max-width:900px){.wizard-entry-head,.wizard-question-head,.wizard-lead-head{grid-template-columns:1fr}.wizard-entry-note{max-width:600px}.wizard-options.cols-3{grid-template-columns:1fr 1fr}.wizard-summary-grid{grid-template-columns:1fr 1fr}.wizard-tech-groups{grid-template-columns:1fr}.wizard-openbook{grid-template-columns:1fr}.wizard-openbook-formula{text-align:left}body[dir="rtl"] .wizard-openbook-formula{text-align:right}}
@media(max-width:680px){.project-wizard{padding-top:104px;padding-bottom:78px}.wizard-path-grid,.wizard-options,.wizard-options.cols-3,.wizard-multiselect,.wizard-form{grid-template-columns:1fr}.wizard-entry-head h2{font-size:clamp(3.1rem,15vw,4.7rem)}.wizard-path-card{min-height:280px;padding:26px}.wizard-path-num{margin-bottom:70px}.wizard-path-cta{left:26px;bottom:24px}body[dir="rtl"] .wizard-path-cta{left:auto;right:26px}.wizard-progress{grid-template-columns:1fr auto;padding:16px 18px}.wizard-progress-track{grid-column:1/-1;grid-row:2}.wizard-panel-body{padding:28px 20px}.wizard-question-head{gap:15px;margin-bottom:26px}.wizard-question-head h3{font-size:clamp(2.55rem,12vw,3.75rem)}.wizard-option{min-height:116px;padding:19px}.wizard-option-code{margin-bottom:18px}.wizard-openbook{padding:22px}.wizard-controls{padding:18px;flex-wrap:wrap}.wizard-controls .wizard-btn{flex:1}.wizard-controls-right{width:100%;margin:0}.wizard-controls-right .wizard-btn{flex:1}.wizard-summary-grid{grid-template-columns:1fr 1fr;margin:28px 0}.wizard-summary-item{padding:14px}.wizard-estimate-value{font-size:clamp(2.6rem,13vw,4.5rem)}.wizard-result-actions{display:grid;grid-template-columns:1fr}.wizard-result-actions .wizard-btn{width:100%}.wizard-form-actions{display:grid;grid-template-columns:1fr}.wizard-form-actions .wizard-btn{width:100%}.wizard-disclaimer{font-size:.58rem}}
@media(max-width:390px){.wizard-summary-grid{grid-template-columns:1fr}.wizard-btn{padding:0 14px;font-size:.57rem}}
@media(prefers-reduced-motion:reduce){.wizard-stage,.wizard-path-card,.wizard-option,.wizard-chip,.wizard-btn{transition:none!important}}


/* V12.1 — interaction-safe fallbacks for mobile/in-app/file preview contexts. */
a.menu-toggle{text-decoration:none;-webkit-user-select:none;user-select:none}
.menu-overlay:target{visibility:visible;pointer-events:auto;clip-path:circle(155% at calc(100% - var(--rv-header-x) - 36px) 64px)}
body[dir="rtl"] .menu-overlay:target{clip-path:circle(155% at calc(var(--rv-header-x) + 36px) 64px)}
.menu-fallback-close{display:none;position:fixed;right:var(--rv-header-x);top:28px;z-index:120;width:72px;height:72px;border-radius:50%;background:var(--rv-gold);color:#fff;text-decoration:none;place-items:center;font:600 .48rem/1 var(--rv-sans);letter-spacing:.08em}
html:not(.js) .menu-overlay:target .menu-fallback-close{display:grid}
body[dir="rtl"] .menu-fallback-close{right:auto;left:var(--rv-header-x)}
.pricing-tab{text-decoration:none;text-align:center}
html:not(.js) .pricing-panel[hidden]{display:block!important}
html:not(.js) #pricing-commercial{margin-top:72px}
.form-feedback{margin:14px 0 0;padding:14px 16px;border:1px solid rgba(176,138,82,.45);font-size:.72rem;line-height:1.55;color:#5f5549;background:rgba(176,138,82,.08)}
.form-feedback.success{display:block}
@media(max-width:768px){
 .menu-overlay:target{clip-path:none!important;opacity:1;visibility:visible;pointer-events:auto;transform:none}
 .menu-fallback-close{top:max(20px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));width:68px;height:68px}
 body[dir="rtl"] .menu-fallback-close{right:auto;left:max(14px,env(safe-area-inset-left))}
}


.design-pricing{position:relative;overflow:hidden}.design-pricing .section-heading{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.7fr);gap:clamp(36px,7vw,100px);align-items:end}.design-pricing .section-intro{max-width:600px;margin:0;color:#665e55;line-height:1.85}.design-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.design-service-card{position:relative;border:1px solid rgba(23,23,23,.16);background:rgba(255,255,255,.34);padding:30px;min-height:490px;display:flex;flex-direction:column;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.design-service-card:hover{transform:translateY(-5px);border-color:rgba(176,138,82,.78);box-shadow:0 24px 60px rgba(23,23,23,.08)}.design-service-card.recommended{background:var(--rv-charcoal);color:var(--rv-ivory);border-color:var(--rv-gold)}.design-service-card .service-badge{align-self:flex-start;border:1px solid rgba(176,138,82,.68);border-radius:999px;padding:6px 9px;color:var(--rv-gold);font:600 .5rem/1 var(--rv-sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px}.design-service-card .service-index{font:600 .55rem/1 var(--rv-sans);letter-spacing:.14em;color:var(--rv-gold);text-transform:uppercase;margin-bottom:46px}.design-service-card h3{font-family:var(--rv-serif);font-weight:400;font-size:clamp(1.75rem,2.4vw,2.65rem);line-height:1.03;margin:0 0 10px}.design-service-card .service-tagline{font:600 .7rem/1.5 var(--rv-sans);letter-spacing:.04em;color:#665d53;margin:0 0 24px}.design-service-card.recommended .service-tagline{color:rgba(243,239,231,.66)}.design-service-card .service-price{border-top:1px solid rgba(23,23,23,.14);border-bottom:1px solid rgba(23,23,23,.14);padding:16px 0;margin-bottom:22px}.design-service-card.recommended .service-price{border-color:rgba(243,239,231,.16)}.design-service-card .service-price small{display:block;font:600 .52rem/1.2 var(--rv-sans);letter-spacing:.12em;text-transform:uppercase;color:#7a7065;margin-bottom:6px}.design-service-card.recommended .service-price small{color:rgba(243,239,231,.5)}.design-service-card .service-price strong{font-family:var(--rv-serif);font-weight:400;font-size:1.28rem;color:var(--rv-gold)}.service-features{display:grid;gap:8px;margin:0 0 28px;padding:0;list-style:none}.service-features li{font-size:.72rem;color:#625a51;display:flex;gap:9px;align-items:flex-start}.service-features li:before{content:"·";color:var(--rv-gold);font-weight:700}.design-service-card.recommended .service-features li{color:rgba(243,239,231,.7)}.design-service-card .service-action{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-top:1px solid rgba(23,23,23,.16);background:transparent;color:var(--rv-charcoal);padding:18px 0 0;cursor:pointer;text-align:left;font:600 .6rem/1.3 var(--rv-sans);letter-spacing:.1em;text-transform:uppercase}.design-service-card.recommended .service-action{color:var(--rv-ivory);border-color:rgba(243,239,231,.16)}body[dir="rtl"] .design-service-card .service-action{text-align:right}.service-action span:last-child{color:var(--rv-gold);font-size:1rem}.design-build-adv{margin-top:28px;background:var(--rv-charcoal);color:var(--rv-ivory);display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.5fr);gap:clamp(30px,6vw,90px);padding:clamp(32px,5vw,62px);position:relative;overflow:hidden}.design-build-adv:after{content:"R";position:absolute;right:-.07em;bottom:-.24em;font-family:var(--rv-serif);font-size:22rem;line-height:.8;color:rgba(176,138,82,.06)}body[dir="rtl"] .design-build-adv:after{right:auto;left:-.07em}.design-build-adv>div{position:relative;z-index:1}.design-build-adv h3{font-family:var(--rv-serif);font-weight:400;font-size:clamp(2.5rem,5vw,5rem);line-height:.98;margin:8px 0 18px}.design-build-adv p{color:rgba(243,239,231,.65);max-width:720px;line-height:1.8;font-size:.84rem}.design-build-highlight{border-left:1px solid var(--rv-gold);padding-left:26px;display:flex;flex-direction:column;justify-content:center}.design-build-highlight strong{font-family:var(--rv-serif);font-weight:400;font-size:clamp(1.7rem,2.6vw,2.6rem);line-height:1.15;color:var(--rv-gold);margin-bottom:14px}.design-build-highlight small{color:rgba(243,239,231,.54);line-height:1.7}.design-build-highlight .btn{align-self:flex-start;margin-top:24px}.commercial-design{margin-top:clamp(80px,10vw,130px)}.commercial-design-head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:36px}.commercial-design-head h3{font-family:var(--rv-serif);font-size:clamp(2.6rem,5vw,5rem);font-weight:400;line-height:1;margin:8px 0 0}.commercial-design-head p{color:#675f56;line-height:1.85;margin:0}.commercial-design-grid .design-service-card{min-height:420px}.specialized-strip{margin-top:14px;border:1px solid rgba(176,138,82,.55);padding:24px 28px;display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;background:#ede3d5}.specialized-strip h4{font-family:var(--rv-serif);font-size:1.65rem;font-weight:400;margin:0 0 6px}.specialized-strip p{font-size:.73rem;color:#645b51;margin:0;max-width:780px}.specialized-strip strong{font:600 .7rem/1.5 var(--rv-sans);color:#76572f;text-align:right}.design-fee-factors{margin-top:clamp(78px,9vw,120px);display:grid;grid-template-columns:minmax(260px,.6fr) minmax(0,1.4fr);gap:clamp(38px,7vw,100px);align-items:start}.design-fee-factors h3{font-family:var(--rv-serif);font-size:clamp(2.3rem,4vw,4.2rem);font-weight:400;line-height:1;margin:10px 0 16px}.factor-chips{display:flex;flex-wrap:wrap;gap:9px}.factor-chip{border:1px solid rgba(23,23,23,.18);padding:12px 15px;font-size:.66rem;color:#5e574f;background:rgba(255,255,255,.25)}.factor-note{margin-top:18px;font-size:.7rem;color:#756c62}.design-value{margin-top:clamp(78px,9vw,120px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:clamp(40px,8vw,120px);background:var(--rv-charcoal);color:var(--rv-ivory);padding:clamp(38px,6vw,80px)}.design-value h3{font-family:var(--rv-serif);font-size:clamp(3rem,6vw,6.3rem);font-weight:400;line-height:.93;margin:10px 0 18px}.design-value p{color:rgba(243,239,231,.64);line-height:1.8}.design-value-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(243,239,231,.16);border-left:1px solid rgba(243,239,231,.16);align-self:stretch}.design-value-list span{padding:22px;border-right:1px solid rgba(243,239,231,.16);border-bottom:1px solid rgba(243,239,231,.16);font:600 .65rem/1.3 var(--rv-sans);letter-spacing:.05em;color:var(--rv-sand)}.design-value-close{grid-column:1/-1;margin-top:24px!important;color:var(--rv-gold)!important;font-family:var(--rv-serif);font-size:1.4rem!important}.design-price-disclaimer{margin-top:24px;border-top:1px solid rgba(23,23,23,.14);padding-top:18px;color:#776e64;font-size:.62rem;line-height:1.75}.design-price-disclaimer strong{color:#554c42}.design-modal{position:fixed;z-index:140;inset:0;display:grid;place-items:center;padding:20px;visibility:hidden;pointer-events:none}.design-modal.open{visibility:visible;pointer-events:auto}.design-modal-backdrop{position:absolute;inset:0;background:rgba(10,10,10,.78);opacity:0;transition:.3s}.design-modal.open .design-modal-backdrop{opacity:1}.design-modal-dialog{position:relative;width:min(920px,100%);max-height:min(820px,calc(100dvh - 40px));overflow:auto;background:var(--rv-ivory);color:var(--rv-charcoal);transform:translateY(18px);opacity:0;transition:.35s ease;box-shadow:0 35px 100px rgba(0,0,0,.32)}.design-modal.open .design-modal-dialog{transform:none;opacity:1}.design-modal-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 30px;border-bottom:1px solid rgba(23,23,23,.12);position:sticky;top:0;background:rgba(243,239,231,.97);z-index:2}.design-modal-close{border:1px solid rgba(23,23,23,.18);background:transparent;width:42px;height:42px;border-radius:50%;cursor:pointer;font-size:1rem}.design-modal-body{padding:clamp(28px,5vw,56px)}.design-modal-body h3{font-family:var(--rv-serif);font-size:clamp(2.7rem,6vw,5.8rem);font-weight:400;line-height:.94;margin:10px 0 12px}.design-modal-body .modal-tag{color:#6c6257;font-size:.85rem;margin-bottom:26px}.modal-price{display:flex;gap:24px;flex-wrap:wrap;padding:20px 0;border-top:1px solid rgba(23,23,23,.13);border-bottom:1px solid rgba(23,23,23,.13);margin-bottom:28px}.modal-price div small{display:block;font-size:.53rem;text-transform:uppercase;letter-spacing:.1em;color:#80766b}.modal-price div strong{font-family:var(--rv-serif);font-weight:400;font-size:1.3rem;color:#75562e}.modal-description{max-width:760px;color:#5f574e;line-height:1.85}.modal-detail-grid{display:grid;grid-template-columns:1fr .7fr;gap:40px;margin-top:32px}.modal-detail-grid h4{font:600 .58rem/1 var(--rv-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--rv-gold);margin:0 0 16px}.modal-detail-grid ul{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.modal-detail-grid li{font-size:.72rem;color:#5b534b;border-bottom:1px solid rgba(23,23,23,.1);padding-bottom:9px}.modal-ideal{border-left:1px solid var(--rv-gold);padding-left:24px;color:#665d54;font-size:.78rem;line-height:1.8}.modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}.modal-actions .btn{border:0}.wizard-info-box{border:1px solid rgba(176,138,82,.62);background:#eee4d6;padding:26px}.wizard-info-box h4{font-family:var(--rv-serif);font-weight:400;font-size:2rem;margin:5px 0 10px}.wizard-info-box p{font-size:.76rem;line-height:1.75;color:#645b51;max-width:780px}.wizard-info-box strong{color:#75562e}.wizard-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.wizard-method-tag{display:inline-flex;padding:7px 9px;border:1px solid rgba(176,138,82,.6);border-radius:999px;color:var(--rv-gold);font-size:.54rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}
@media(max-width:960px){.design-pricing .section-heading,.commercial-design-head,.design-fee-factors,.design-value,.design-build-adv{grid-template-columns:1fr}.design-service-grid{grid-template-columns:1fr 1fr}.design-service-card:last-child{grid-column:1/-1}.design-build-highlight{border-left:0;border-top:1px solid var(--rv-gold);padding:24px 0 0}.modal-detail-grid{grid-template-columns:1fr}.modal-ideal{border-left:0;border-top:1px solid var(--rv-gold);padding:20px 0 0}}
@media(max-width:680px){.design-service-grid{grid-template-columns:1fr}.design-service-card:last-child{grid-column:auto}.design-service-card{min-height:auto;padding:24px}.design-service-card .service-index{margin-bottom:30px}.specialized-strip{grid-template-columns:1fr}.specialized-strip strong{text-align:left}body[dir="rtl"] .specialized-strip strong{text-align:right}.design-value{padding:30px 22px}.design-value-list{grid-template-columns:1fr}.modal-detail-grid ul{grid-template-columns:1fr}.design-modal{padding:8px}.design-modal-dialog{max-height:calc(100dvh - 16px)}.design-modal-top{padding:18px}.design-modal-body{padding:26px 20px}.modal-actions{display:grid}.modal-actions .btn{width:100%}.wizard-docs{grid-template-columns:1fr}}


.projects-grid{grid-template-columns:1fr 1fr}
.project-wide{grid-row:auto;grid-column:1/-1}
.project-wide .project-img,.project-card:not(.project-wide) .project-img{height:auto;aspect-ratio:16/9}
.project-card img{display:block;object-fit:contain}
@media(max-width:900px){.projects-grid{grid-template-columns:1fr}.project-wide{grid-column:auto}}
