:root {
      --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
      --text-sm: clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
      --text-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
      --text-lg: clamp(1.125rem, 1rem + 0.75vw, 1.5rem);
      --text-xl: clamp(1.5rem, 1.2rem + 1.25vw, 2.35rem);
      --text-2xl: clamp(2.4rem, 1.2rem + 3vw, 4.8rem);
      --space-1: .25rem; --space-2: .5rem; --space-3: .75rem; --space-4: 1rem; --space-5: 1.25rem; --space-6: 1.5rem; --space-8: 2rem; --space-10: 2.5rem; --space-12: 3rem; --space-16: 4rem; --space-20: 5rem; --space-24: 6rem;
      --color-bg: #161311;
      --color-surface: #1c1816;
      --color-surface-2: #251f1c;
      --color-surface-3: #2d2521;
      --color-border: #3a312b;
      --color-divider: #2d2621;
      --color-text: #efe4d7;
      --color-text-muted: #c2b09d;
      --color-text-inverse: #161311;
      --color-primary: #70a8c9;
      --color-primary-hover: #8fc0dc;
      --color-accent-red: #de4a5d;
      --color-accent-gold: #f0bc49;
      --color-accent-black: #e6dacc;
      --color-accent-cream: #2f2923;
      --radius-sm: .375rem; --radius-md: .5rem; --radius-lg: .875rem; --radius-xl: 1.35rem; --radius-full: 9999px;
      --shadow-sm: 0 1px 2px rgba(0,0,0,.18);
      --shadow-md: 0 12px 28px rgba(0,0,0,.28);
      --shadow-lg: 0 24px 48px rgba(0,0,0,.38);
      --font-display: 'Cormorant Garamond', Georgia, serif;
      --font-body: 'Work Sans', Arial, sans-serif;
      --content-default: 1120px;
    }
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; text-size-adjust: none; scroll-padding-top: 6rem; }
    body {
      min-height: 100dvh; font-family: var(--font-body); font-size: var(--text-base); line-height: 1.6; color: var(--color-text);
      background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent-gold) 14%, transparent), transparent 28%),
        radial-gradient(circle at 0% 20%, color-mix(in srgb, var(--color-primary) 10%, transparent), transparent 25%),
        var(--color-bg);
    }
    a, button, input, textarea { transition: 180ms cubic-bezier(0.16, 1, 0.3, 1); }
    a { color: inherit; text-decoration: none; }
    button { cursor: pointer; border: 0; background: none; }
    :focus-visible { outline: 2px solid var(--color-primary); outline-offset: 3px; border-radius: var(--radius-sm); }
    .container { width:min(calc(100% - 2rem), var(--content-default)); margin-inline:auto; }
    .section { padding-block: clamp(var(--space-12), 8vw, var(--space-24)); position: relative; }
    .eyebrow { font-size: var(--text-xs); letter-spacing: .18em; text-transform: uppercase; color: var(--color-text-muted); }
    .affiliate-disclosure { font-size: var(--text-xs); letter-spacing: .1em; text-transform: uppercase; color: var(--color-text-muted); margin: 0 0 var(--space-2); }
    .site-header {
      position: sticky; top: 0; z-index: 30; backdrop-filter: blur(14px);
      background: color-mix(in srgb, var(--color-bg) 90%, transparent);
      border-bottom: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
    }
    .header-inner { display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); padding: var(--space-4) 0; }
    .brand { display:flex; align-items:center; gap:var(--space-3); }
    .brand-mark { width: 42px; height: 42px; flex-shrink: 0; border-radius: 50%; box-shadow: 0 0 0 1px color-mix(in srgb, var(--color-text) 12%, transparent); }
    .brand-name { font-size: var(--text-sm); font-weight:600; }
    .brand-sub, .nav-link { font-size: var(--text-xs); color: var(--color-text-muted); }
    .header-actions { display:flex; align-items:center; gap:var(--space-3); }
    .btn { display:inline-flex; align-items:center; justify-content:center; min-height: 48px; padding: .95rem 1.3rem; border-radius: var(--radius-full); font-size: var(--text-sm); font-weight:600; }
    .btn-primary { background: var(--color-primary); color: var(--color-text-inverse); box-shadow: var(--shadow-sm); }
    .btn-primary:hover { background: var(--color-primary-hover); transform: translateY(-1px); }
    .btn-secondary { background: transparent; border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent); color: var(--color-text); }
    .btn-secondary:hover { background: var(--color-surface-2); }
    .hero { padding-block: clamp(var(--space-12), 10vw, var(--space-24)); position: relative; overflow: clip; isolation: isolate; }
    .hero-mask {
      position:absolute; inset:0; z-index:0; pointer-events:none;
      background:
        linear-gradient(90deg, color-mix(in srgb, var(--color-bg) 99%, transparent) 0%, color-mix(in srgb, var(--color-bg) 97%, transparent) 33%, color-mix(in srgb, var(--color-bg) 72%, transparent) 54%, color-mix(in srgb, var(--color-bg) 28%, transparent) 68%, color-mix(in srgb, var(--color-bg) 10%, transparent) 100%);
    }
    .hero::before {
      content:""; position:absolute; inset: 0% 1% auto auto; width:min(64vw, 1040px); aspect-ratio: 1.68 / 1; border-radius: 2rem; pointer-events:none; z-index:0;
      opacity:.9; background: url("https://user-gen-media-assets.s3.amazonaws.com/gpt4o_images/748ff8c6-81c7-4e83-99bb-f453e842f3d1.png") center/cover no-repeat;
      filter: saturate(1.28) contrast(1.12) brightness(1.02); box-shadow: var(--shadow-lg);
      animation: clothFloat 10s ease-in-out infinite; transform-origin: left center;
    }
    .hero::after {
      content:""; position:absolute; inset: 6% 3% auto auto; width:min(60vw, 960px); aspect-ratio: 1.68 / 1; border-radius: 2rem; pointer-events:none; z-index:0; opacity:.2;
      background:
        radial-gradient(circle at 22% 34%, rgba(255,255,255,.8), transparent 18%),
        radial-gradient(circle at 70% 58%, rgba(255,255,255,.38), transparent 24%),
        linear-gradient(135deg, rgba(12,53,123,.18), rgba(184,31,53,.18) 34%, rgba(20,20,20,.14) 58%, rgba(215,160,23,.15) 78%, rgba(184,31,53,.16));
      filter: blur(9px); animation: clothGlow 10s ease-in-out infinite;
    }
    @keyframes clothFloat {
      0%,100% { transform: perspective(1000px) rotateY(-7deg) rotate(-3deg) translate3d(0,0,0); }
      25% { transform: perspective(1000px) rotateY(-2deg) rotate(-2deg) translate3d(-2px,-7px,0); }
      50% { transform: perspective(1000px) rotateY(-10deg) rotate(-4deg) translate3d(8px,2px,0); }
      75% { transform: perspective(1000px) rotateY(-3deg) rotate(-2deg) translate3d(-3px,-2px,0); }
    }
    @keyframes clothGlow {
      0%,100% { opacity:.18; transform: rotate(-3deg) translate(0,0); }
      50% { opacity:.3; transform: rotate(-2deg) translate(8px,5px); }
    }
    .hero-grid, .split, .contact-wrap { display:grid; gap:var(--space-8); position:relative; z-index:1; }
    .hero-grid { grid-template-columns: 1.08fr .92fr; align-items:center; }
    .hero-copy { max-width: 41rem; }
    .hero-copy h1 {
      font-family: var(--font-display); font-size: var(--text-2xl); line-height: .95; letter-spacing: -.03em; max-width: 10ch;
      margin: var(--space-4) 0 var(--space-5); text-shadow: 0 1px 0 rgba(255,255,255,.38);
    }
    .hero-copy p { max-width: 52ch; color: var(--color-text-muted); text-shadow: 0 1px 0 rgba(255,255,255,.25); }
    .hero-actions { display:flex; flex-wrap:wrap; gap:var(--space-3); margin-top: var(--space-6); }
    .hero-card {
      background: linear-gradient(180deg, color-mix(in srgb, var(--color-surface) 92%, transparent), color-mix(in srgb, var(--color-surface-3) 96%, transparent));
      border:1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-xl); padding: clamp(var(--space-6), 4vw, var(--space-10));
      box-shadow: var(--shadow-md); position:relative; overflow:hidden; backdrop-filter: blur(8px);
    }
    .hero-card::before {
      content:""; position:absolute; inset:0; background: linear-gradient(145deg, color-mix(in srgb, var(--color-accent-red) 7%, transparent), transparent 28%, color-mix(in srgb, var(--color-accent-gold) 9%, transparent) 100%); pointer-events:none;
    }
    .hero-point { position:relative; padding-bottom: var(--space-4); border-bottom:1px solid var(--color-divider); }
    .hero-point:last-child { border-bottom:0; padding-bottom:0; }
    .hero-point strong { display:block; margin-bottom:.3rem; color: var(--color-accent-red); }
    .split { grid-template-columns: 1.08fr .92fr; }
    .card {
      background: linear-gradient(180deg, var(--color-surface), var(--color-surface-2));
      border:1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-xl);
      padding: clamp(var(--space-6), 3vw, var(--space-8)); box-shadow: var(--shadow-sm);
    }
    .flag-band {
      position:absolute; inset:auto 0 0 0; height: 10px; border-radius: 999px;
      background: linear-gradient(90deg, #0b2a7a 0 22%, #ffffff 22% 28%, #c8102e 28% 44%, #1b1b1b 44% 62%, #f2c318 62% 80%, #d7262f 80% 100%);
      opacity:.95;
    }
    .section h2 { font-family: var(--font-display); font-size: var(--text-xl); line-height: 1.05; margin: var(--space-3) 0 var(--space-4); }
    .section p { max-width: 66ch; color: var(--color-text-muted); }
    .service-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:var(--space-4); margin-top: var(--space-8); }
    .service-card { position:relative; overflow:hidden; }
    .service-card::before {
      content:""; position:absolute; inset:0 auto 0 0; width: 6px;
      background: linear-gradient(180deg, #0b2a7a 0 24%, #ffffff 24% 34%, #c8102e 34% 52%, #1b1b1b 52% 68%, #f2c318 68% 84%, #d7262f 84% 100%);
    }
    .service-card h3, .testimonial-card h3, .contact-card h3 { font-size: var(--text-lg); line-height:1.2; margin-bottom: var(--space-2); }
    .service-card p, .testimonial-card p { color: var(--color-text-muted); }
    .service-card small { display:inline-block; margin-top: var(--space-4); color: var(--color-primary); font-weight:600; }
    .section-highlight {
      background: linear-gradient(135deg, color-mix(in srgb, var(--color-accent-red) 5%, var(--color-surface)), color-mix(in srgb, var(--color-accent-gold) 7%, var(--color-surface-2)));
    }
    .quote-mark { font-family: var(--font-display); font-size: 4rem; line-height: .6; color: var(--color-accent-red); margin-bottom: var(--space-3); }
    .testimonial-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:var(--space-4); margin-top: var(--space-8); }
    .testimonial-card { position:relative; }
    .testimonial-card::after {
      content:""; position:absolute; inset:auto var(--space-6) var(--space-6) var(--space-6); height: 3px;
      background: linear-gradient(90deg, #0b2a7a, #c8102e, #1b1b1b, #f2c318, #d7262f); border-radius: 999px;
    }
    .process-list { display:grid; gap:var(--space-4); margin-top: var(--space-8); }
    .process-item { display:grid; grid-template-columns:auto 1fr; gap:var(--space-4); align-items:start; }
    .process-number {
      width: 2.35rem; height: 2.35rem; border-radius: 50%;
      background: linear-gradient(145deg, color-mix(in srgb, var(--color-accent-gold) 35%, var(--color-surface)), color-mix(in srgb, var(--color-accent-red) 18%, var(--color-surface-2)));
      color: var(--color-accent-red); display:grid; place-items:center; font-size:var(--text-sm); font-weight:700;
      border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
    }
    .contact-wrap { grid-template-columns: 1.05fr .95fr; margin-top: var(--space-8); }
    .contact-card a:not(.btn) { color: var(--color-primary); font-weight:600; }
    .contact-panel {
      background: linear-gradient(180deg, var(--color-surface), var(--color-surface-2));
      border-radius: var(--radius-xl); padding: clamp(var(--space-6), 4vw, var(--space-8));
      border: 1px solid color-mix(in srgb, var(--color-text) 8%, transparent);
      box-shadow: var(--shadow-sm);
      position: relative; overflow: hidden;
    }
    .contact-panel::before {
      content:""; position:absolute; inset:0 0 auto 0; height: 8px;
      background: linear-gradient(90deg, #0b2a7a 0 22%, #ffffff 22% 28%, #c8102e 28% 44%, #1b1b1b 44% 62%, #f2c318 62% 80%, #d7262f 80% 100%);
    }
    form { display:grid; gap:var(--space-4); }
    label { font-size: var(--text-sm); font-weight:600; }
    input, textarea {
      width:100%; margin-top: var(--space-2); border:1px solid color-mix(in srgb, var(--color-text) 14%, transparent); background: var(--color-surface);
      color: var(--color-text); border-radius: var(--radius-md); padding: .95rem 1rem; min-height: 48px;
    }
    textarea { min-height: 150px; resize: vertical; }
    .footer {
      padding: var(--space-10) 0 var(--space-12);
      border-top:1px solid var(--color-divider);
      color: var(--color-text-muted); font-size: var(--text-sm);
      background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--color-accent-gold) 4%, transparent));
      position:relative;
    }
    .footer::before {
      content:""; position:absolute; inset:0 0 auto 0; height: 10px;
      background: linear-gradient(90deg, #0b2a7a 0 18%, #ffffff 18% 23%, #c8102e 23% 40%, #1b1b1b 40% 58%, #f2c318 58% 78%, #d7262f 78% 100%);
      opacity:.9;
    }
    .faq-list { max-width: 62ch; margin-top: var(--space-8); display:flex; flex-direction:column; gap:var(--space-3); }
    .faq-item { border:1px solid color-mix(in srgb, var(--color-text) 10%, transparent); border-radius: var(--radius-lg); background: linear-gradient(180deg, var(--color-surface), var(--color-surface-2)); box-shadow: var(--shadow-sm); overflow:hidden; }
    .faq-item summary {
      cursor:pointer; list-style:none; padding: var(--space-4) var(--space-5); display:flex; align-items:center; justify-content:space-between; gap:var(--space-4);
      font-weight:600; font-size: var(--text-base); color: var(--color-text);
    }
    .faq-item summary::-webkit-details-marker { display:none; }
    .faq-item summary::after {
      content:'+'; flex-shrink:0; font-size:1.4rem; line-height:1; color: var(--color-primary); transition: transform .2s ease;
    }
    .faq-item[open] summary::after { transform: rotate(45deg); }
    .faq-item .faq-answer { padding: 0 var(--space-5) var(--space-5); color: var(--color-text-muted); }
    .faq-item .faq-answer a { color: var(--color-primary); }
    @media (max-width: 900px) {
      .hero::before, .hero::after { width:min(82vw, 700px); right:2%; top: 10%; }
      .hero-grid, .split, .service-grid, .testimonial-grid, .contact-wrap { grid-template-columns: 1fr; }
    }
    @media (max-width: 720px) {
      .header-inner { align-items:flex-start; flex-direction:column; }
      .header-actions { width:100%; justify-content:space-between; }
      .hero::before, .hero::after { width:96vw; right:2%; top: 18%; opacity:.8; }
      .hero-copy h1 { max-width: 12ch; }
      .hero-actions { flex-direction:column; align-items:stretch; }
      .btn { width:100%; }
    }
    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior:auto; }
      .hero::before, .hero::after { animation:none !important; }
      * { transition:none !important; }
    }
