
  :root{
    --ivory:#F6F2E8;
    --white:#FFFFFF;
    --warmgray:#DAD3C3;
    --charcoal:#211F1B;
    --green-deep:#12301F;
    --green-vivid:#2E6E42;
    --gold:#B7935A;
    --font-display: 'Fraunces', Georgia, 'Times New Roman', serif;
    --font-body: 'Public Sans', -apple-system, 'Segoe UI', Arial, sans-serif;
    --font-mono: 'JetBrains Mono', 'Courier New', monospace;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  body{background:var(--ivory); color:var(--charcoal); font-family:var(--font-body); font-weight:300; line-height:1.6;}
  .label{font-family:var(--font-mono); font-size:11px; letter-spacing:0.22em; text-transform:uppercase; color:var(--green-deep);}
  a{color:inherit; text-decoration:none;}

  /* NAV */
  header{position:sticky; top:0; z-index:10; display:flex; align-items:center; justify-content:space-between; padding:26px 56px; background:rgba(246,242,232,0.92); backdrop-filter:blur(6px); border-bottom:0.5px solid var(--warmgray);}
  .logo{font-family:var(--font-display); font-size:20px; letter-spacing:0.14em; font-weight:400; text-transform:uppercase;}
  nav ul{display:flex; gap:34px; list-style:none;}
  nav a{font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--charcoal); opacity:0.75; transition:opacity .3s;}
  nav a:hover{opacity:1; color:var(--green-vivid);}
  .nav-icons{display:flex; gap:22px; font-size:11px; letter-spacing:0.14em; text-transform:uppercase;}

  /* HERO */
  .hero{min-height:92vh; display:grid; grid-template-columns:1fr 1fr; align-items:center; padding:0 56px; gap:40px;}
  .hero-copy .label{margin-bottom:28px; display:block;}
  .hero-copy h1{font-family:var(--font-display); font-weight:400; font-size:clamp(40px,5vw,68px); line-height:1.04; letter-spacing:-0.01em;}
  .hero-copy h1 em{font-style:italic; color:var(--green-vivid); font-weight:300;}
  .hero-copy p{max-width:380px; margin:26px 0 40px; font-size:15px; color:#4a463f;}
  .cta-row{display:flex; gap:28px; align-items:center; flex-wrap:wrap;}
  .btn{font-family:var(--font-mono); font-size:11px; letter-spacing:0.16em; text-transform:uppercase; padding:16px 30px; border:0.5px solid var(--charcoal); transition:all .35s ease;}
  .btn.primary{background:var(--green-deep); color:var(--ivory); border-color:var(--green-deep);}
  .btn.primary:hover{background:var(--charcoal);}
  .btn.ghost{border-color:var(--charcoal); color:var(--charcoal);}
  .btn.ghost:hover{border-color:var(--gold); color:var(--gold);}

  .hero-gem{display:flex; align-items:center; justify-content:center; position:relative;}
  .hero-gem svg{width:min(72%,420px); filter:drop-shadow(0 24px 40px rgba(18,48,31,0.14));}
  .gem-ring{position:absolute; width:520px; height:520px; border:0.5px solid var(--warmgray); border-radius:50%;}

  /* SECTION SHARED */
  section{padding:120px 56px;}
  .section-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:64px; border-bottom:0.5px solid var(--warmgray); padding-bottom:26px;}
  .section-head h2{font-family:var(--font-display); font-weight:400; font-size:34px;}
  .section-head .label{margin-bottom:10px; display:block;}
  .section-head .view-all{font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--green-vivid);}

  /* FEATURED GRID */
  .gem-grid{display:grid; grid-template-columns:repeat(3, minmax(240px,1fr)); gap:2px; background:var(--warmgray); width:100%;}
  .gem-card{background:var(--ivory); padding:0; position:relative; overflow:hidden; transition:background .4s; width:100%;}
  .gem-card .frame{width:100%; min-height:220px; aspect-ratio:4/5; display:flex; align-items:center; justify-content:center; background:var(--white);}
  .gem-card .frame img{width:100%; height:100%; object-fit:cover;}
  .gem-card .frame svg{width:38%; transition:transform .6s cubic-bezier(.2,.8,.2,1);}
  .gem-card:hover .frame svg{transform:scale(1.08) rotate(2deg);}
  .gem-info{padding:24px 26px 30px;}
  .gem-ref{font-family:var(--font-mono); font-size:11px; color:var(--green-vivid); letter-spacing:0.08em; margin-bottom:10px;}
  .gem-info h3{font-family:var(--font-display); font-weight:400; font-size:19px; margin-bottom:14px;}
  .gem-spec{display:flex; gap:16px; font-size:12px; color:#6b665b; margin-bottom:20px;}
  .gem-status{font-family:var(--font-mono); font-size:10px; letter-spacing:0.12em; text-transform:uppercase; color:var(--gold); border:0.5px solid var(--gold); display:inline-block; padding:5px 10px; margin-bottom:18px;}
  .inquire{font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--charcoal); border-bottom:0.5px solid var(--charcoal); padding-bottom:3px; display:inline-block;}
  .gem-card:hover .inquire{color:var(--green-vivid); border-color:var(--green-vivid);}

  /* ORIGIN */
  .origin{background:var(--green-deep); color:var(--ivory); display:grid; grid-template-columns:0.9fr 1.1fr; gap:60px; align-items:center;}
  .origin .label{color:var(--gold);}
  .origin h2{font-family:var(--font-display); font-weight:400; font-size:38px; line-height:1.15; margin:22px 0 26px;}
  .origin p{color:#cfd8cf; max-width:420px; margin-bottom:32px; font-size:15px;}
  .origin-map svg{width:100%; max-width:460px;}

  /* CUT PROCESS */
  .cut-flow{display:flex; justify-content:space-between; align-items:center; gap:6px; margin-top:20px;}
  .cut-step{flex:1; text-align:center;}
  .cut-step .dot{width:9px; height:9px; border-radius:50%; background:var(--green-vivid); margin:0 auto 14px;}
  .cut-step .label{color:#8a8578;}
  .cut-line{flex:0.4; height:0.5px; background:var(--warmgray); margin-top:-30px;}

  /* ABOUT / B2B strip */
  .strip{display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--warmgray);}
  .strip > div{background:var(--ivory); padding:70px 56px;}
  .strip h3{font-family:var(--font-display); font-weight:400; font-size:26px; margin:16px 0 18px;}
  .strip p{max-width:360px; font-size:14px; color:#4a463f; margin-bottom:26px;}

  footer{padding:70px 56px 40px; border-top:0.5px solid var(--warmgray);}
  .footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; margin-bottom:60px;}
  .footer-grid .logo{margin-bottom:16px;}
  .footer-grid p{font-size:13px; color:#6b665b; max-width:260px;}
  .footer-col h4{font-family:var(--font-mono); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; margin-bottom:18px; color:var(--green-deep);}
  .footer-col a{display:block; font-size:13px; color:#4a463f; margin-bottom:11px;}
  .footer-col a:hover{color:var(--green-vivid);}
  .footer-bottom{display:flex; justify-content:space-between; font-size:11px; color:#8a8578; letter-spacing:0.04em;}

  @media(max-width:860px){
    .hero{grid-template-columns:1fr; text-align:left; min-height:auto; padding:60px 24px;}
    header{padding:20px 24px;}
    nav{display:none;}
    section{padding:70px 24px;}
    .gem-grid{grid-template-columns:1fr;}
    .origin{grid-template-columns:1fr; padding:70px 24px;}
    .strip{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:1fr 1fr;}
    .cut-flow{flex-wrap:wrap;}
  }

  /* === Additional page templates (Exceptional, Origin, Cut, Color, Inclusions, About, Professionals, Private Access, Contact) === */

  .page-hero{padding:100px 56px 60px; max-width:760px;}
  .page-hero h1{font-family:var(--font-display); font-weight:400; font-size:44px; margin:18px 0 20px;}
  .page-hero p{font-size:15px; color:#4a463f; max-width:520px;}

  .exceptional-grid{display:grid; grid-template-columns:1fr; gap:2px; background:var(--warmgray); margin:0 56px 100px;}
  .exceptional-card{background:var(--ivory); display:grid; grid-template-columns:1fr 1fr; gap:40px; padding:60px; align-items:center;}
  .exceptional-card .frame{aspect-ratio:1; background:var(--white); display:flex; align-items:center; justify-content:center;}
  .exceptional-card .frame svg{width:44%;}
  .exceptional-card .gem-ref{font-family:var(--font-mono); font-size:11px; color:var(--green-vivid); margin-bottom:12px;}
  .exceptional-card h3{font-family:var(--font-display); font-weight:400; font-size:28px; margin-bottom:16px;}
  .exceptional-card p{font-size:14px; color:#4a463f; margin-bottom:22px; max-width:400px;}
  @media(max-width:860px){ .exceptional-card{grid-template-columns:1fr; padding:32px;} .exceptional-grid{margin:0 24px 60px;} }

  .editorial-block{padding:0 56px 100px; max-width:820px;}
  .editorial-block h2{font-family:var(--font-display); font-weight:400; font-size:30px; margin:40px 0 16px;}
  .editorial-block p{font-size:15px; color:#4a463f; margin-bottom:18px; max-width:640px;}
  .editorial-media{background:var(--white); border:0.5px solid var(--warmgray); aspect-ratio:16/8; display:flex; align-items:center; justify-content:center; margin:30px 0;}
  .editorial-media svg{width:60%; max-width:420px;}
  @media(max-width:860px){ .editorial-block{padding:0 24px 60px;} }

  .color-swatch-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:var(--warmgray); margin:0 56px 100px;}
  .swatch-card{background:var(--ivory); padding:28px 22px; text-align:center;}
  .swatch-circle{width:60px; height:60px; border-radius:50%; margin:0 auto 16px; border:0.5px solid rgba(0,0,0,.08);}
  .swatch-card h4{font-family:var(--font-display); font-weight:400; font-size:16px; margin-bottom:6px;}
  .swatch-card p{font-size:11px; color:#8a8578; letter-spacing:.04em;}
  @media(max-width:860px){ .color-swatch-grid{grid-template-columns:repeat(2,1fr); margin:0 24px 60px;} }

  .inclusion-showcase{display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--warmgray); margin:0 56px 100px;}
  .inclusion-card{background:var(--ivory); padding:26px;}
  .inclusion-card .macro-frame{aspect-ratio:1; background:var(--white); display:flex; align-items:center; justify-content:center; margin-bottom:16px;}
  .inclusion-card .macro-frame svg{width:60%;}
  .inclusion-card h4{font-family:var(--font-display); font-weight:400; font-size:16px; margin-bottom:8px;}
  .inclusion-card p{font-size:12px; color:#6b665b;}
  @media(max-width:860px){ .inclusion-showcase{grid-template-columns:1fr; margin:0 24px 60px;} }

  .form-block{max-width:480px; margin:0 56px 100px; display:flex; flex-direction:column; gap:16px;}
  .form-block input, .form-block select, .form-block textarea{font-family:var(--font-body); font-size:14px; padding:14px 16px; border:0.5px solid var(--warmgray); background:var(--white); color:var(--charcoal);}
  .form-block textarea{min-height:110px; resize:vertical;}
  .form-block label{font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:#8a8578; margin-bottom:-8px;}
  .form-block .btn{align-self:flex-start;}
  .form-tabs{display:flex; gap:0; margin:0 56px 40px; border-bottom:0.5px solid var(--warmgray);}
  .form-tabs a{padding:14px 0; margin-right:34px; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:#8a8578; border-bottom:1.5px solid transparent;}
  .form-tabs a.active{color:var(--green-vivid); border-color:var(--green-vivid);}
  @media(max-width:860px){ .form-block, .form-tabs{margin-left:24px; margin-right:24px;} }

  .contact-methods{display:flex; gap:34px; margin:0 56px 100px; flex-wrap:wrap;}
  .contact-method{font-size:13px;}
  .contact-method .label{margin-bottom:8px; display:block;}
  .contact-method a{font-family:var(--font-display); font-size:17px;}
  @media(max-width:860px){ .contact-methods{margin:0 24px 60px;} }

  /* === Header account/search icons === */
  .pd-nav-icons{display:flex; align-items:center; gap:24px;}
  .pd-icon-link, .pd-account-link{display:flex; align-items:center; gap:8px; color:var(--charcoal); opacity:.8; transition:opacity .3s, color .3s;}
  .pd-icon-link:hover, .pd-account-link:hover{opacity:1; color:var(--green-vivid);}
  .pd-account-link span{font-size:11px; letter-spacing:.12em; text-transform:uppercase;}

  /* === Private Access — split auth layout === */
  .pd-auth-wrap{display:grid; grid-template-columns:1fr 0.8fr; min-height:80vh;}
  .pd-auth-panel{padding:90px 64px; max-width:520px;}
  .pd-auth-panel h1{font-family:var(--font-display); font-weight:400; font-size:34px; margin:14px 0 14px;}
  .pd-auth-panel > p{font-size:14px; color:#4a463f; margin-bottom:34px;}

  .pd-auth-tabs{display:flex; gap:0; border-bottom:0.5px solid var(--warmgray); margin-bottom:34px;}
  .pd-auth-tab{background:none; border:none; cursor:pointer; font-family:var(--font-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:#8a8578; padding:14px 0; margin-right:34px; border-bottom:1.5px solid transparent; transition:color .3s, border-color .3s;}
  .pd-auth-tab.is-active{color:var(--green-vivid); border-color:var(--green-vivid);}

  .pd-auth-form{display:none; flex-direction:column; gap:14px; animation:pdFadeIn .35s ease;}
  .pd-auth-form.is-active{display:flex;}
  @keyframes pdFadeIn{ from{opacity:0; transform:translateY(4px);} to{opacity:1; transform:translateY(0);} }
  .pd-auth-form label{font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#8a8578; margin-bottom:-6px;}
  .pd-auth-form .pd-optional{text-transform:none; letter-spacing:0; color:#b2ac9e;}
  .pd-auth-form input, .pd-auth-form select{font-family:var(--font-body); font-size:14px; padding:13px 15px; border:0.5px solid var(--warmgray); background:var(--white); color:var(--charcoal);}
  .pd-auth-form input:focus, .pd-auth-form select:focus{outline:none; border-color:var(--green-vivid);}
  .pd-form-row{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
  .pd-form-row > div{display:flex; flex-direction:column; gap:6px;}
  .pd-checkbox-row{display:flex; align-items:center; gap:8px; text-transform:none; letter-spacing:0; font-size:13px; color:#4a463f;}
  .pd-forgot-link{font-size:12px; color:var(--green-vivid); align-self:flex-start; margin-top:-4px;}
  .pd-auth-form .btn{border:none; cursor:pointer; margin-top:10px; align-self:flex-start;}
  .pd-auth-error{background:#fbeceb; border:0.5px solid #d98b86; color:#8a2f28; font-size:13px; padding:12px 14px; margin-bottom:20px;}

  .pd-auth-visual{background:var(--green-deep); display:flex; align-items:center; justify-content:center;}
  .pd-auth-visual svg{width:56%; max-width:340px; filter:drop-shadow(0 20px 34px rgba(0,0,0,.25));}

  @media(max-width:900px){
    .pd-auth-wrap{grid-template-columns:1fr;}
    .pd-auth-panel{padding:50px 24px; max-width:none;}
    .pd-auth-visual{display:none;}
    .pd-form-row{grid-template-columns:1fr;}
  }

  /* === Collection page filters === */
  .collection-filters{padding:0 56px 60px; display:flex; flex-direction:column; gap:16px; border-bottom:0.5px solid var(--warmgray); margin-bottom:20px;}
  .filter-row{display:flex; align-items:baseline; gap:24px; flex-wrap:wrap;}
  .filter-row .label{flex-shrink:0; width:110px;}
  .filter-options{display:flex; flex-wrap:wrap; gap:18px;}
  .filter-chip{display:flex; align-items:center; gap:7px; font-size:13px; color:#4a463f; cursor:pointer;}
  .filter-chip input{accent-color:var(--green-vivid); width:14px; height:14px;}
  .filter-chip:hover{color:var(--green-vivid);}
  @media(max-width:860px){
    .collection-filters{padding:0 24px 40px;}
    .filter-row{flex-direction:column; gap:10px;}
    .filter-row .label{width:auto;}
  }
