/* lanaroyale.witagency.com - single stylesheet.
   Static conversion of the Lana Royale design-options review site.
   Each of the twelve pages keeps its own mockup design; every page's styles
   are scoped under a body class (body.pg-*) so one file serves all pages.
   Fonts are self-hosted (see tools/fetch-fonts.mjs); regenerate the FONTS
   section with that tool if the font set changes. */

/* ---------- FONTS (generated by tools/fetch-fonts.mjs, latin subset) ---------- */
@font-face { font-family: 'Cinzel'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/cinzel-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cinzel'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/cinzel-500.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cinzel'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/cinzel-600.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cinzel'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/cinzel-700.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 300; font-display: swap; src: url('/fonts/cormorant-garamond-300i.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 400; font-display: swap; src: url('/fonts/cormorant-garamond-400i.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 500; font-display: swap; src: url('/fonts/cormorant-garamond-500i.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 300; font-display: swap; src: url('/fonts/cormorant-garamond-300.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/cormorant-garamond-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/cormorant-garamond-500.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/cormorant-garamond-600.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/cormorant-garamond-700.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/dm-sans-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/dm-sans-500.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/dm-sans-700.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Josefin Sans'; font-style: normal; font-weight: 300; font-display: swap; src: url('/fonts/josefin-sans-300.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Josefin Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/josefin-sans-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Josefin Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/josefin-sans-600.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Josefin Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/josefin-sans-700.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Libre Caslon Display'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/libre-caslon-display-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 400; font-display: swap; src: url('/fonts/playfair-display-400i.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 600; font-display: swap; src: url('/fonts/playfair-display-600i.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/playfair-display-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/playfair-display-500.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/playfair-display-600.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/playfair-display-700.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 200; font-display: swap; src: url('/fonts/raleway-200.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 300; font-display: swap; src: url('/fonts/raleway-300.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/raleway-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/raleway-500.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/raleway-600.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/source-sans-3-400.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/source-sans-3-500.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/source-sans-3-600.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ---------- GLOBAL ---------- */

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Contact form additions (honeypot, Turnstile widget, status line).
   Shared across the eight site-option forms; kept visually neutral. */
.honeypot { position: absolute; left: -9999px; }
.turnstile-slot { margin-top: 18px; min-height: 65px; }
.form-status { margin-top: 14px; font-weight: 600; min-height: 22px; }
.form-status.ok { color: #2e9e5b; }
.form-status.error { color: #d64545; }

/* ---------- INDEX (design options list) ---------- */

body.pg-home { font-family: Georgia, 'Times New Roman', serif; color: #2A2722; background: #FBF8F2; padding: 40px 20px; line-height: 1.6; }
body.pg-home .container { max-width: 640px; margin: 0 auto; }
body.pg-home h1 { font-size: 1.4rem; font-weight: normal; letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 8px; }
body.pg-home .subtitle { font-size: 0.95rem; color: #6B6560; margin-bottom: 32px; }
body.pg-home h2 { font-size: 0.85rem; font-weight: normal; letter-spacing: 0.15em; text-transform: uppercase; color: #9B8B6E; border-bottom: 1px solid #E0D8CC; padding-bottom: 6px; margin: 28px 0 14px; }
body.pg-home .option { margin-bottom: 12px; }
body.pg-home .option a { color: #6B4C2A; text-decoration: none; font-size: 0.95rem; }
body.pg-home .option a:hover { text-decoration: underline; }
body.pg-home .option .desc { color: #6B6560; font-size: 0.85rem; margin-left: 4px; }
body.pg-home .note { font-size: 0.82rem; color: #9B8B6E; margin-top: 32px; font-style: italic; }

/* ---------- PALETTE + PALETTE 2 (shared styles) ---------- */

body.pg-palette { font-family: 'Raleway', 'Helvetica Neue', sans-serif; background-color: #0A0A0A; color: #D4CFC6; min-height: 100vh; -webkit-font-smoothing: antialiased; }
body.pg-palette .header { text-align: center; padding: 4.5rem 2rem 1.5rem; }
body.pg-palette .header .logo { max-width: 160px; height: auto; margin: 0 auto 1.2rem; display: block; }
body.pg-palette .header h1 { font-family: 'Cinzel', serif; font-size: clamp(1.6rem, 3vw, 2.4rem); letter-spacing: 0.35em; text-transform: uppercase; font-weight: 400; color: #E8E2D8; margin-bottom: 0.5rem; }
body.pg-palette .header .subtitle { font-family: 'Raleway', sans-serif; font-size: 0.72rem; letter-spacing: 0.3em; text-transform: uppercase; color: #6B6358; font-weight: 400; }
body.pg-palette .header .description { font-family: 'Cormorant Garamond', serif; font-size: 1.1rem; font-style: italic; color: #8A7E6E; max-width: 640px; margin: 1.5rem auto 0; line-height: 1.7; }
body.pg-palette .divider { width: 50px; height: 1px; background: linear-gradient(90deg, transparent, #C8A064, transparent); margin: 1.5rem auto; }
body.pg-palette .inspiration-note { text-align: center; max-width: 700px; margin: 0 auto 3rem; padding: 0 2rem; }
body.pg-palette .inspiration-note p { font-size: 0.78rem; line-height: 1.8; color: #5A5348; letter-spacing: 0.02em; }
body.pg-palette .inspiration-note .refs { font-size: 0.68rem; color: #4A443A; margin-top: 0.8rem; letter-spacing: 0.05em; line-height: 1.7; }
body.pg-palette .palettes-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2.5rem 2.5rem; max-width: 1200px; margin: 0 auto; padding: 0 2rem 4rem; }
body.pg-palette .row-divider { grid-column: 1 / -1; height: 1px; background: linear-gradient(90deg, transparent 5%, #2A2622 50%, transparent 95%); margin: 0.5rem 0; }
body.pg-palette .palette-card { border-radius: 4px; overflow: hidden; border: 1px solid #1E1C1A; border-left: 3px solid var(--card-accent, #C8A064); border-bottom: none; transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; }
body.pg-palette .palette-card::after { content: ''; display: block; height: 3px; background: linear-gradient(90deg, var(--card-primary, #1A1714), var(--card-accent, #C8A064), var(--card-muted, #6B5E50)); }
body.pg-palette .palette-card:hover { transform: translateY(-4px); box-shadow: 0 16px 48px rgba(0,0,0,0.4); border-color: #2A2622; border-left-color: var(--card-accent, #C8A064); }
body.pg-palette .card-photo { position: relative; height: 240px; overflow: hidden; }
body.pg-palette .card-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; filter: saturate(0.85); }
body.pg-palette .palette-card:hover .card-photo img { transform: scale(1.04); }
body.pg-palette .card-photo .photo-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.5) 100%); }
body.pg-palette .color-strip { display: flex; height: 8px; }
body.pg-palette .color-strip span { flex: 1; position: relative; }
body.pg-palette .card-body { padding: 2rem 2rem 2.2rem; }
body.pg-palette .card-body h2 { font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; font-weight: 400; color: #E8E2D8; margin-top: 0.4rem; margin-bottom: 0.4rem; }
body.pg-palette .card-body .theme-tag { font-family: 'Raleway', sans-serif; font-size: 0.65rem; letter-spacing: 0.22em; text-transform: uppercase; color: #6B6358; display: block; margin-bottom: 1.8rem; }
body.pg-palette .card-body .theme-description { font-size: 0.85rem; line-height: 1.7; color: #7A6E5E; font-weight: 300; margin-bottom: 1.6rem; }
body.pg-palette .card-body .inspired-by { font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase; color: #7A6E5E; margin-bottom: 1.6rem; line-height: 1.6; }
body.pg-palette .card-body .inspired-by strong { color: #9A8E7E; font-weight: 500; }
body.pg-palette .type-preview { border-top: 1px solid #1E1C1A; padding-top: 1.4rem; margin-bottom: 1.6rem; }
body.pg-palette .type-preview .type-label { font-size: 0.6rem; letter-spacing: 0.2em; text-transform: uppercase; color: #6A6154; margin-bottom: 0.6rem; display: block; }
body.pg-palette .type-sample { display: flex; flex-direction: column; gap: 0.6rem; }
body.pg-palette .type-sample .sample-heading { font-family: 'Cinzel', serif; font-size: 1rem; letter-spacing: 0.15em; text-transform: uppercase; }
body.pg-palette .type-sample .sample-subheading { font-family: 'Cormorant Garamond', serif; font-size: 1.05rem; font-style: italic; }
body.pg-palette .type-sample .sample-body { font-family: 'Raleway', sans-serif; font-size: 0.78rem; letter-spacing: 0.04em; font-weight: 300; line-height: 1.6; }
body.pg-palette .swatches-section { border-top: 1px solid #2A2622; padding-top: 1.6rem; margin-top: 1rem; }
body.pg-palette .swatches-label { font-size: 0.6rem; letter-spacing: 0.2em; text-transform: uppercase; color: #6A6154; margin-bottom: 0.7rem; display: block; }
body.pg-palette .swatches-row { display: flex; gap: 0.8rem; flex-wrap: wrap; }
body.pg-palette .swatch-item { display: flex; flex-direction: column; align-items: center; gap: 0.35rem; }
body.pg-palette .swatch-circle { width: 36px; height: 36px; border-radius: 50%; border: 2px solid rgba(255,255,255,0.08); transition: transform 0.3s ease, border-color 0.3s ease; }
body.pg-palette .swatch-circle:hover { transform: scale(1.15); border-color: rgba(255,255,255,0.2); }
body.pg-palette .swatch-name { font-size: 0.55rem; letter-spacing: 0.08em; color: #6A6154; text-transform: uppercase; }
body.pg-palette .swatch-hex { font-size: 0.52rem; color: #5A514A; font-family: monospace; }
body.pg-palette .page-footer { text-align: center; padding: 2rem 2rem 3rem; border-top: 1px solid #1A1816; }
body.pg-palette .page-footer p { font-size: 0.68rem; color: #3A3630; letter-spacing: 0.1em; }
@media (max-width: 900px) {
  body.pg-palette .palettes-grid { grid-template-columns: 1fr; max-width: 600px; }
  body.pg-palette .row-divider { display: none; }
}
@media (max-width: 480px) {
  body.pg-palette .header { padding: 3rem 1.5rem 1rem; }
  body.pg-palette .palettes-grid { padding: 0 1rem 3rem; gap: 1.5rem; }
  body.pg-palette .card-body { padding: 1.2rem 1.4rem 1.5rem; }
  body.pg-palette .card-photo { height: 160px; }
}

/* ---------- PALETTE 3 ---------- */

body.pg-palette3 { font-family: 'Raleway', 'Helvetica Neue', sans-serif; background-color: #FAF8F4; color: #3A3530; min-height: 100vh; -webkit-font-smoothing: antialiased; }
body.pg-palette3 .header { text-align: center; padding: 4.5rem 2rem 1.5rem; }
body.pg-palette3 .header .logo { max-width: 160px; height: auto; margin: 0 auto 1.2rem; display: block; }
body.pg-palette3 .header h1 { font-family: 'Cinzel', serif; font-size: clamp(1.6rem, 3vw, 2.4rem); letter-spacing: 0.35em; text-transform: uppercase; font-weight: 400; color: #1A1510; margin-bottom: 0.5rem; }
body.pg-palette3 .header .subtitle { font-family: 'Raleway', sans-serif; font-size: 0.72rem; letter-spacing: 0.3em; text-transform: uppercase; color: #4A4440; font-weight: 400; }
body.pg-palette3 .header .description { font-family: 'Cormorant Garamond', serif; font-size: 1.1rem; font-style: italic; color: #6A6058; max-width: 640px; margin: 1.5rem auto 0; line-height: 1.7; }
body.pg-palette3 .divider { width: 50px; height: 1px; background: linear-gradient(90deg, transparent, #C8A064, transparent); margin: 1.5rem auto; }
body.pg-palette3 .inspiration-note { text-align: center; max-width: 700px; margin: 0 auto 3rem; padding: 0 2rem; }
body.pg-palette3 .inspiration-note p { font-size: 0.78rem; line-height: 1.8; color: #7A7068; letter-spacing: 0.02em; }
body.pg-palette3 .inspiration-note .refs { font-size: 0.68rem; color: #9A9088; margin-top: 0.8rem; letter-spacing: 0.05em; line-height: 1.7; }
body.pg-palette3 .palettes-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2.5rem 2.5rem; max-width: 1200px; margin: 0 auto; padding: 0 2rem 4rem; }
body.pg-palette3 .row-divider { grid-column: 1 / -1; height: 1px; background: linear-gradient(90deg, transparent 5%, #DDD8D0 50%, transparent 95%); margin: 0.5rem 0; }
body.pg-palette3 .palette-card { border-radius: 4px; overflow: hidden; background: #FFFFFF; border: 1px solid #E8E2DA; border-left: 3px solid var(--card-accent, #C8A064); border-bottom: none; box-shadow: 0 2px 12px rgba(0,0,0,0.06); transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; }
body.pg-palette3 .palette-card::after { content: ''; display: block; height: 3px; background: linear-gradient(90deg, var(--card-primary, #1A1714), var(--card-accent, #C8A064), var(--card-muted, #6B5E50)); }
body.pg-palette3 .palette-card:hover { transform: translateY(-4px); box-shadow: 0 16px 48px rgba(0,0,0,0.1); border-color: #D0C8BE; border-left-color: var(--card-accent, #C8A064); }
body.pg-palette3 .card-photo { position: relative; height: 240px; overflow: hidden; }
body.pg-palette3 .card-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; filter: saturate(0.85); }
body.pg-palette3 .palette-card:hover .card-photo img { transform: scale(1.04); }
body.pg-palette3 .card-photo .photo-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.3) 100%); }
body.pg-palette3 .color-strip { display: flex; height: 8px; }
body.pg-palette3 .color-strip span { flex: 1; position: relative; }
body.pg-palette3 .card-body { padding: 2rem 2rem 2.2rem; }
body.pg-palette3 .card-body h2 { font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; font-weight: 400; color: #2A2520; margin-top: 0.4rem; margin-bottom: 0.4rem; }
body.pg-palette3 .card-body .theme-tag { font-family: 'Raleway', sans-serif; font-size: 0.65rem; letter-spacing: 0.22em; text-transform: uppercase; color: #9A9088; display: block; margin-bottom: 1.8rem; }
body.pg-palette3 .card-body .theme-description { font-size: 0.85rem; line-height: 1.7; color: #5A5248; font-weight: 300; margin-bottom: 1.6rem; }
body.pg-palette3 .card-body .inspired-by { font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase; color: #7A7068; margin-bottom: 1.6rem; line-height: 1.6; }
body.pg-palette3 .card-body .inspired-by strong { color: #5A5248; font-weight: 500; }
body.pg-palette3 .type-preview { border-top: 1px solid #E8E2DA; padding-top: 1.4rem; margin-bottom: 1.6rem; }
body.pg-palette3 .type-preview .type-label { font-size: 0.6rem; letter-spacing: 0.2em; text-transform: uppercase; color: #9A9088; margin-bottom: 0.6rem; display: block; }
body.pg-palette3 .type-sample { display: flex; flex-direction: column; gap: 0.6rem; }
body.pg-palette3 .type-sample .sample-heading { font-family: 'Cinzel', serif; font-size: 1rem; letter-spacing: 0.15em; text-transform: uppercase; }
body.pg-palette3 .type-sample .sample-subheading { font-family: 'Cormorant Garamond', serif; font-size: 1.05rem; font-style: italic; }
body.pg-palette3 .type-sample .sample-body { font-family: 'Raleway', sans-serif; font-size: 0.78rem; letter-spacing: 0.04em; font-weight: 300; line-height: 1.6; }
body.pg-palette3 .swatches-section { border-top: 1px solid #E8E2DA; padding-top: 1.6rem; margin-top: 1rem; }
body.pg-palette3 .swatches-label { font-size: 0.6rem; letter-spacing: 0.2em; text-transform: uppercase; color: #9A9088; margin-bottom: 0.7rem; display: block; }
body.pg-palette3 .swatches-row { display: flex; gap: 0.8rem; flex-wrap: wrap; }
body.pg-palette3 .swatch-item { display: flex; flex-direction: column; align-items: center; gap: 0.35rem; }
body.pg-palette3 .swatch-circle { width: 36px; height: 36px; border-radius: 50%; border: 2px solid rgba(0,0,0,0.1); transition: transform 0.3s ease, border-color 0.3s ease; }
body.pg-palette3 .swatch-circle:hover { transform: scale(1.15); border-color: rgba(0,0,0,0.2); }
body.pg-palette3 .swatch-name { font-size: 0.55rem; letter-spacing: 0.08em; color: #7A7068; text-transform: uppercase; }
body.pg-palette3 .swatch-hex { font-size: 0.52rem; color: #9A9088; font-family: monospace; }
body.pg-palette3 .page-footer { text-align: center; padding: 2rem 2rem 3rem; border-top: 1px solid #E8E2DA; }
body.pg-palette3 .page-footer p { font-size: 0.68rem; color: #B0A89E; letter-spacing: 0.1em; }
@media (max-width: 900px) {
  body.pg-palette3 .palettes-grid { grid-template-columns: 1fr; max-width: 600px; }
  body.pg-palette3 .row-divider { display: none; }
}
@media (max-width: 480px) {
  body.pg-palette3 .header { padding: 3rem 1.5rem 1rem; }
  body.pg-palette3 .palettes-grid { padding: 0 1rem 3rem; gap: 1.5rem; }
  body.pg-palette3 .card-body { padding: 1.2rem 1.4rem 1.5rem; }
  body.pg-palette3 .card-photo { height: 160px; }
}

/* ---------- OPTION A - Heritage Gold on Light ---------- */

body.pg-site-a { font-family: 'Raleway', sans-serif; background-color: #FBF8F2; color: #1A1714; line-height: 1.6; overflow-x: hidden; }
body.pg-site-a h1,
body.pg-site-a h2,
body.pg-site-a h3 { font-family: 'Cinzel', serif; font-weight: 600; letter-spacing: 0.05em; }
body.pg-site-a h1 { font-size: 3.5rem; line-height: 1.1; font-weight: 700; }
body.pg-site-a h2 { font-size: 2.5rem; margin-bottom: 1.5rem; position: relative; }
body.pg-site-a h2::after { content: ''; display: block; width: 60px; height: 2px; background: linear-gradient(90deg, #C8A064, transparent); margin-top: 1rem; }
body.pg-site-a h3 { font-size: 1.4rem; margin-bottom: 1rem; }
body.pg-site-a p { font-size: 1rem; margin-bottom: 1.2rem; color: #2A2420; }
body.pg-site-a .secondary-text { color: #5A5450; font-size: 0.95rem; }
body.pg-site-a em { font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: normal; }
body.pg-site-a nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; background: transparent; transition: all 0.3s ease; padding: 1.5rem 2rem; }
body.pg-site-a nav.scrolled { background: rgba(251, 248, 242, 0.98); box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08); }
body.pg-site-a .nav-container { max-width: 1400px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
body.pg-site-a .nav-logo { width: 100px; height: auto; filter: brightness(0) invert(1); transition: filter 0.3s ease; }
body.pg-site-a nav.scrolled .nav-logo { filter: none; }
body.pg-site-a .nav-links { display: flex; gap: 2.5rem; list-style: none; }
body.pg-site-a .nav-links a { font-family: 'Raleway', sans-serif; font-size: 0.9rem; text-decoration: none; color: rgba(255, 255, 255, 0.9); font-weight: 500; text-transform: uppercase; letter-spacing: 0.1em; transition: color 0.3s ease; position: relative; text-shadow: 0 1px 3px rgba(0,0,0,0.3); }
body.pg-site-a .nav-links a:hover { color: #FFFFFF; }
body.pg-site-a nav.scrolled .nav-links a { color: #1A1714; text-shadow: none; }
body.pg-site-a nav.scrolled .nav-links a:hover { color: #C8A064; }
body.pg-site-a .nav-links a::after { content: ''; position: absolute; bottom: -5px; left: 0; width: 0; height: 1px; background: #C8A064; transition: width 0.3s ease; }
body.pg-site-a .nav-links a:hover::after { width: 100%; }
body.pg-site-a .hamburger { display: none; flex-direction: column; gap: 6px; cursor: pointer; padding: 10px; min-width: 44px; min-height: 44px; }
body.pg-site-a .hamburger span { width: 25px; height: 2px; background: #FFFFFF; transition: all 0.3s ease; }
body.pg-site-a nav.scrolled .hamburger span { background: #1A1714; }
body.pg-site-a .hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(8px, 8px); }
body.pg-site-a .hamburger.active span:nth-child(2) { opacity: 0; }
body.pg-site-a .hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(7px, -7px); }
body.pg-site-a .hero { width: 100%; min-height: 100vh; background: linear-gradient(135deg, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.55)), url('/img/03-24-2026-lana-royale-0028-1920.webp'); background-size: cover; background-position: center; background-attachment: fixed; display: flex; align-items: center; justify-content: center; text-align: center; color: white; position: relative; margin-top: 0; }
body.pg-site-a .hero-content { max-width: 700px; padding: 2rem; opacity: 0; animation: a-fadeInUp 1s ease 0.3s forwards; }
body.pg-site-a .hero-logo { width: 140px; height: auto; margin: 0 auto 2rem; filter: brightness(1.1); }
body.pg-site-a .hero h1 { color: white; margin-bottom: 1rem; font-size: 3.2rem; }
body.pg-site-a .hero-subtitle { font-family: 'Cormorant Garamond', serif; font-size: 1.3rem; font-style: italic; margin-bottom: 2rem; color: rgba(255, 255, 255, 0.95); line-height: 1.6; }
body.pg-site-a .hero-sub { font-size: 1.05rem; margin-bottom: 2.5rem; color: rgba(255, 255, 255, 0.95); line-height: 1.7; text-shadow: 0 1px 3px rgba(0,0,0,0.4); }
body.pg-site-a .cta-button { display: inline-block; padding: 1rem 2.5rem; min-height: 48px; background: #C8A064; color: white; text-decoration: none; font-weight: 600; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.15em; transition: all 0.3s ease; border: 2px solid #C8A064; cursor: pointer; border-radius: 0; }
body.pg-site-a .cta-button:hover { background: transparent; color: #C8A064; }
@keyframes a-fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
body.pg-site-a section { padding: 5rem 2rem; scroll-margin-top: 80px; }
body.pg-site-a .container { max-width: 1200px; margin: 0 auto; }
body.pg-site-a .about-section { background: #FBF8F2; }
body.pg-site-a .why-italy-section { background: #F5F1E9; }
body.pg-site-a .services-section { background: #FBF8F2; }
body.pg-site-a .partners-section { background: #F5F1E9; }
body.pg-site-a .showroom-section { background: #FBF8F2; }
body.pg-site-a .contact-section { background: #F5F1E9; }
body.pg-site-a .about-content { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
body.pg-site-a .about-text h2 { margin-top: 0; }
body.pg-site-a .about-text p { margin-bottom: 1.5rem; }
body.pg-site-a .mission-quote { margin-top: 2rem; padding: 2rem; border-left: 4px solid #C8A064; background: rgba(200, 160, 100, 0.05); font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.1rem; color: #1A1714; line-height: 1.8; }
body.pg-site-a .about-image { width: 100%; height: 500px; object-fit: cover; border: 1px solid rgba(200, 160, 100, 0.3); }
body.pg-site-a .why-italy-intro { text-align: center; max-width: 800px; margin: 0 auto 3rem; }
body.pg-site-a .why-italy-intro h2 { font-size: 2.2rem; }
body.pg-site-a .why-italy-intro .secondary-text { font-size: 1.1rem; margin-bottom: 2rem; }
body.pg-site-a .why-italy-content { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
body.pg-site-a .why-italy-point { padding: 2rem; background: rgba(251, 248, 242, 0.5); border: 1px solid rgba(200, 160, 100, 0.2); }
body.pg-site-a .why-italy-point h3 { color: #C8A064; margin-bottom: 1rem; }
body.pg-site-a .services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; margin-top: 2rem; }
body.pg-site-a .service-card { padding: 2.5rem; background: white; border: 1px solid rgba(200, 160, 100, 0.2); border-top: 3px solid #C8A064; text-align: center; transition: all 0.3s ease; opacity: 0; animation: a-fadeInUp 0.8s ease forwards; }
body.pg-site-a .service-card:nth-child(2) { animation-delay: 0.1s; }
body.pg-site-a .service-card:nth-child(3) { animation-delay: 0.2s; }
body.pg-site-a .service-card:hover { box-shadow: 0 10px 30px rgba(200, 160, 100, 0.15); transform: translateY(-5px); }
body.pg-site-a .service-number { font-family: 'Cinzel', serif; font-size: 2.5rem; color: #C8A064; font-weight: 700; margin-bottom: 1rem; }
body.pg-site-a .service-card h3 { margin-bottom: 1rem; }
body.pg-site-a .partners-content { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; }
body.pg-site-a .partner-category h3 { color: #C8A064; margin-bottom: 2rem; font-size: 1.3rem; text-transform: uppercase; letter-spacing: 0.08em; }
body.pg-site-a .partner-list { list-style: none; }
body.pg-site-a .partner-list li { padding: 1rem 0; border-bottom: 1px solid rgba(200, 160, 100, 0.15); }
body.pg-site-a .partner-list li:last-child { border-bottom: none; }
body.pg-site-a .partner-list a { text-decoration: none; color: #1A1714; font-weight: 500; transition: color 0.3s ease; display: flex; justify-content: space-between; align-items: center; }
body.pg-site-a .partner-list a::after { content: '→'; opacity: 0; transition: opacity 0.3s ease; margin-left: 1rem; color: #C8A064; }
body.pg-site-a .partner-list a:hover { color: #C8A064; }
body.pg-site-a .partner-list a:hover::after { opacity: 1; }
body.pg-site-a .showroom-info { text-align: center; margin-bottom: 3rem; }
body.pg-site-a .showroom-address { font-size: 1.1rem; color: #2A2420; margin-bottom: 0.5rem; }
body.pg-site-a .showroom-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 3rem; }
body.pg-site-a .gallery-item { position: relative; overflow: hidden; aspect-ratio: 1; border: 1px solid rgba(200, 160, 100, 0.2); opacity: 0; animation: a-fadeInUp 0.8s ease forwards; }
body.pg-site-a .gallery-item:nth-child(2) { animation-delay: 0.1s; }
body.pg-site-a .gallery-item:nth-child(3) { animation-delay: 0.2s; }
body.pg-site-a .gallery-item:nth-child(4) { animation-delay: 0.3s; }
body.pg-site-a .gallery-item:nth-child(5) { animation-delay: 0.4s; }
body.pg-site-a .gallery-item:nth-child(6) { animation-delay: 0.5s; }
body.pg-site-a .gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
body.pg-site-a .gallery-item:hover img { transform: scale(1.05); }
body.pg-site-a .contact-content { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; }
body.pg-site-a .contact-info { padding-right: 2rem; }
body.pg-site-a .contact-info h3 { margin-top: 0; }
body.pg-site-a .contact-detail { margin-bottom: 2rem; }
body.pg-site-a .contact-label { font-weight: 600; color: #C8A064; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.1em; margin-bottom: 0.5rem; }
body.pg-site-a .contact-detail p { margin-bottom: 0; }
body.pg-site-a .contact-form { display: flex; flex-direction: column; gap: 1.5rem; }
body.pg-site-a .form-group { display: flex; flex-direction: column; }
body.pg-site-a .form-group label { font-weight: 500; margin-bottom: 0.5rem; font-size: 0.9rem; }
body.pg-site-a .form-group input,
body.pg-site-a .form-group textarea { padding: 1rem; border: 1px solid rgba(200, 160, 100, 0.3); background: white; font-family: 'Raleway', sans-serif; font-size: 1rem; color: #1A1714; transition: border-color 0.3s ease; }
body.pg-site-a .form-group input:focus,
body.pg-site-a .form-group textarea:focus { outline: none; border-color: #C8A064; }
body.pg-site-a .form-group textarea { resize: vertical; min-height: 150px; }
body.pg-site-a .form-submit { align-self: flex-start; padding: 1rem 2.5rem; background: #C8A064; color: white; border: 2px solid #C8A064; font-weight: 600; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.15em; cursor: pointer; transition: all 0.3s ease; font-family: 'Raleway', sans-serif; }
body.pg-site-a .form-submit:hover { background: transparent; color: #C8A064; }
body.pg-site-a footer { background: #1A1714; color: white; padding: 3rem 2rem; text-align: center; }
body.pg-site-a .footer-content { max-width: 1200px; margin: 0 auto; }
body.pg-site-a .footer-logo { width: 50px; height: auto; margin-bottom: 1.5rem; }
body.pg-site-a .footer-text { font-size: 0.9rem; color: rgba(255, 255, 255, 0.7); }
@media (max-width: 900px) {
  body.pg-site-a h1 { font-size: 2.5rem; }
  body.pg-site-a h2 { font-size: 2rem; }
  body.pg-site-a .nav-links { display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; background: rgba(251, 248, 242, 0.98); padding: 2rem; gap: 1.5rem; }
  body.pg-site-a .nav-links.active { display: flex; }
  body.pg-site-a .nav-links a { color: #1A1714; text-shadow: none; }
  body.pg-site-a .hamburger { display: flex; }
  body.pg-site-a .about-content,
body.pg-site-a .why-italy-content,
body.pg-site-a .contact-content,
body.pg-site-a .partners-content { grid-template-columns: 1fr; gap: 2.5rem; }
  body.pg-site-a .services-grid { grid-template-columns: 1fr; }
  body.pg-site-a .showroom-gallery { grid-template-columns: repeat(2, 1fr); }
  body.pg-site-a .about-text h2 { font-size: 1.8rem; }
  body.pg-site-a section { padding: 3rem 2rem; }
}
@media (max-width: 480px) {
  body.pg-site-a h1 { font-size: 2rem; }
  body.pg-site-a h2 { font-size: 1.5rem; }
  body.pg-site-a h2::after { width: 40px; }
  body.pg-site-a .nav-container { padding: 0; }
  body.pg-site-a .hero { margin-top: 0; }
  body.pg-site-a .hero-content { padding: 1rem; }
  body.pg-site-a .hero h1 { font-size: 2rem; }
  body.pg-site-a .hero-subtitle { font-size: 1rem; }
  body.pg-site-a .nav-logo { width: 60px; }
  body.pg-site-a .hero-logo { width: 60px; }
  body.pg-site-a .showroom-gallery { grid-template-columns: 1fr; }
  body.pg-site-a section { padding: 2rem 1.5rem; }
  body.pg-site-a .contact-content,
body.pg-site-a .partners-content { gap: 2rem; }
  body.pg-site-a .contact-info { padding-right: 0; }
}
body.pg-site-a .fade-in { opacity: 0; animation: a-fadeInUp 0.8s ease forwards; }
@media (max-height: 500px) {
  body.pg-site-a .hero { min-height: 70vh; }
}

/* ---------- OPTION B - Tuscan Earth ---------- */

body.pg-site-b { font-family: 'Raleway', sans-serif; color: #2A1810; background-color: #FAF7F2; line-height: 1.6; overflow-x: hidden; }
body.pg-site-b h1,
body.pg-site-b h2,
body.pg-site-b h3 { font-family: 'Cinzel', serif; font-weight: 600; }
body.pg-site-b h1 { font-size: 3.5rem; line-height: 1.1; }
body.pg-site-b h2 { font-size: 2.5rem; margin-bottom: 0.5rem; color: #2A1810; }
body.pg-site-b h3 { font-size: 1.4rem; margin-bottom: 1rem; }
body.pg-site-b .subtitle { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.2rem; color: #8A7A68; margin-bottom: 2rem; }
body.pg-site-b .subheading { font-family: 'Cormorant Garamond', serif; font-size: 1.1rem; font-style: italic; color: #8A7A68; margin-bottom: 1.5rem; }
body.pg-site-b p { margin-bottom: 1.5rem; color: #3A3A38; font-size: 1rem; line-height: 1.7; }
body.pg-site-b nav { position: fixed; top: 0; width: 100%; z-index: 1000; padding: 1.5rem 2rem; display: flex; justify-content: space-between; align-items: center; background-color: transparent; transition: all 0.3s ease; }
body.pg-site-b nav.scrolled { background-color: rgba(250, 247, 242, 0.98); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); }
body.pg-site-b .logo { height: 60px; }
body.pg-site-b .logo img { height: 100%; width: auto; filter: brightness(0) invert(1); transition: filter 0.3s ease; }
body.pg-site-b nav.scrolled .logo img { filter: none; }
body.pg-site-b .nav-links { display: flex; gap: 2rem; list-style: none; }
body.pg-site-b .nav-links a { text-decoration: none; color: rgba(255, 255, 255, 0.9); font-size: 0.95rem; font-weight: 500; transition: color 0.3s ease; text-shadow: 0 1px 3px rgba(0,0,0,0.3); }
body.pg-site-b .nav-links a:hover { color: #FFFFFF; }
body.pg-site-b nav.scrolled .nav-links a { color: #2A1810; text-shadow: none; }
body.pg-site-b nav.scrolled .nav-links a:hover { color: #A0664D; }
body.pg-site-b .hamburger { display: none; flex-direction: column; cursor: pointer; gap: 0.4rem; padding: 10px; min-width: 44px; min-height: 44px; }
body.pg-site-b .hamburger span { width: 25px; height: 2px; background-color: #FFFFFF; transition: all 0.3s ease; }
body.pg-site-b nav.scrolled .hamburger span { background-color: #2A1810; }
body.pg-site-b .hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(8px, 8px); }
body.pg-site-b .hamburger.active span:nth-child(2) { opacity: 0; }
body.pg-site-b .hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(7px, -7px); }
@media (max-width: 900px) {
  body.pg-site-b .hamburger { display: flex; }
  body.pg-site-b .nav-links { display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; background-color: #FAF7F2; padding: 1.5rem 2rem; gap: 1rem; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
  body.pg-site-b .nav-links.active { display: flex; }
  body.pg-site-b .nav-links li { list-style: none; }
  body.pg-site-b .nav-links a { color: #2A1810; text-shadow: none; }
}
body.pg-site-b .hero { min-height: 100vh; background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url('/img/03-24-2026-lana-royale-0022-1920.webp') center / cover; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: white; position: relative; margin-top: 0; max-width: none; padding: 0 2rem; }
body.pg-site-b .hero-logo { height: 80px; margin-bottom: 2rem; }
body.pg-site-b .hero-logo img { height: 100%; width: auto; }
body.pg-site-b .hero h1 { color: white; font-size: 3.5rem; margin-bottom: 1rem; max-width: 900px; }
body.pg-site-b .hero-subtitle { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.3rem; color: rgba(255, 255, 255, 0.9); margin-bottom: 2.5rem; max-width: 700px; }
body.pg-site-b .cta-button { padding: 1rem 2.5rem; min-height: 48px; background-color: #A0664D; color: white; text-decoration: none; font-weight: 600; border: none; cursor: pointer; transition: background-color 0.3s ease; font-family: 'Raleway', sans-serif; }
body.pg-site-b .cta-button:hover { background-color: #8A5540; }
body.pg-site-b section { padding: 4rem 2rem; max-width: 1400px; margin: 0 auto; scroll-margin-top: 80px; }
body.pg-site-b section:nth-child(odd) { background-color: #FAF7F2; }
body.pg-site-b section:nth-child(even) { background-color: #FFFAF6; }
body.pg-site-b .section-container { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
body.pg-site-b .section-text h2 { margin-bottom: 1.5rem; }
body.pg-site-b .section-image img { width: 100%; height: auto; display: block; }
body.pg-site-b .about { margin-top: 60px; }
body.pg-site-b .blockquote { background-color: rgba(160, 102, 77, 0.08); border-left: 4px solid #A0664D; padding: 2rem; margin: 2rem 0; font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.15rem; color: #2A1810; line-height: 1.8; }
body.pg-site-b .image-break { height: 400px; background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('/img/03-24-2026-lana-royale-0021-1920.webp') center / cover; display: flex; align-items: center; justify-content: center; color: white; text-align: center; padding: 0 2rem; margin: 0; max-width: none; }
body.pg-site-b .image-break-quote { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 2rem; max-width: 600px; }
body.pg-site-b .why-italy { text-align: center; }
body.pg-site-b .why-italy h2 { margin-bottom: 1rem; }
body.pg-site-b .highlight-box { background-color: rgba(160, 102, 77, 0.1); border: 2px solid #A0664D; padding: 2rem; margin: 2rem auto; max-width: 700px; color: #2A1810; font-weight: 500; font-size: 1.1rem; }
body.pg-site-b .why-italy-content { max-width: 900px; margin: 2rem auto 0; text-align: left; }
body.pg-site-b .services { text-align: center; }
body.pg-site-b .services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; margin-top: 3rem; }
body.pg-site-b .service-card { background-color: #FFFAF6; padding: 2.5rem; border-top: 4px solid #A0664D; text-align: left; transition: transform 0.3s ease, box-shadow 0.3s ease; }
body.pg-site-b .service-card:hover { transform: translateY(-5px); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1); }
body.pg-site-b .service-card h3 { color: #A0664D; margin-bottom: 1rem; }
body.pg-site-b .service-card p { font-size: 0.95rem; line-height: 1.7; }
body.pg-site-b .partners { text-align: center; }
body.pg-site-b .partners-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; margin-top: 3rem; }
body.pg-site-b .partner-category h3 { color: #A0664D; margin-bottom: 1.5rem; text-align: left; }
body.pg-site-b .partner-list { text-align: left; }
body.pg-site-b .partner-item { margin-bottom: 1.2rem; padding-bottom: 1.2rem; border-bottom: 1px solid rgba(160, 102, 77, 0.2); }
body.pg-site-b .partner-item:last-child { border-bottom: none; }
body.pg-site-b .partner-name { font-weight: 600; color: #2A1810; margin-bottom: 0.3rem; }
body.pg-site-b .partner-link { color: #A0664D; text-decoration: none; font-size: 0.9rem; transition: color 0.3s ease; }
body.pg-site-b .partner-link:hover { color: #2A1810; }
body.pg-site-b .showroom { text-align: center; }
body.pg-site-b .gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 3rem; }
body.pg-site-b .gallery-item { overflow: hidden; aspect-ratio: 1; }
body.pg-site-b .gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
body.pg-site-b .gallery-item img:hover { transform: scale(1.05); }
body.pg-site-b .showroom-address { margin-top: 3rem; font-family: 'Cormorant Garamond', serif; font-style: italic; color: #8A7A68; font-size: 1.1rem; }
body.pg-site-b .contact { text-align: center; }
body.pg-site-b .contact-container { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; margin-top: 3rem; text-align: left; }
body.pg-site-b .contact-info h3 { color: #A0664D; margin-bottom: 1.5rem; }
body.pg-site-b .contact-info p { margin-bottom: 1.5rem; }
body.pg-site-b .contact-info a { color: #A0664D; text-decoration: none; transition: color 0.3s ease; }
body.pg-site-b .contact-info a:hover { color: #2A1810; }
body.pg-site-b .contact-form { display: flex; flex-direction: column; gap: 1rem; }
body.pg-site-b .form-group { display: flex; flex-direction: column; }
body.pg-site-b .form-group label { margin-bottom: 0.5rem; font-weight: 600; color: #2A1810; }
body.pg-site-b .form-group input,
body.pg-site-b .form-group textarea { padding: 0.75rem; border: 1px solid #CCC; background-color: #FFFAF6; color: #2A1810; font-family: 'Raleway', sans-serif; }
body.pg-site-b .form-group textarea { resize: vertical; min-height: 120px; }
body.pg-site-b .form-group button { padding: 1rem; background-color: #A0664D; color: white; border: none; cursor: pointer; font-weight: 600; font-family: 'Raleway', sans-serif; transition: background-color 0.3s ease; }
body.pg-site-b .form-group button:hover { background-color: #8A5540; }
body.pg-site-b footer { background-color: #2A1810; color: white; text-align: center; padding: 3rem 2rem; }
body.pg-site-b footer .logo { height: 40px; margin-bottom: 1rem; }
body.pg-site-b footer p { color: rgba(255, 255, 255, 0.8); margin-bottom: 0; }
body.pg-site-b .fade-in { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease, transform 0.6s ease; }
body.pg-site-b .fade-in.visible { opacity: 1; transform: translateY(0); }
@media (max-width: 900px) {
  body.pg-site-b h1 { font-size: 2.5rem; }
  body.pg-site-b h2 { font-size: 2rem; }
  body.pg-site-b .hero h1 { font-size: 2.2rem; }
  body.pg-site-b .hero-subtitle { font-size: 1rem; }
  body.pg-site-b .section-container { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-b .services-grid { grid-template-columns: 1fr; }
  body.pg-site-b .partners-grid { grid-template-columns: 1fr; }
  body.pg-site-b .gallery { grid-template-columns: repeat(2, 1fr); }
  body.pg-site-b .contact-container { grid-template-columns: 1fr; }
  body.pg-site-b section { padding: 3rem 1.5rem; }
}
@media (max-width: 480px) {
  body.pg-site-b h1 { font-size: 1.8rem; }
  body.pg-site-b h2 { font-size: 1.5rem; }
  body.pg-site-b .hero { margin-top: 0; }
  body.pg-site-b .hero h1 { font-size: 1.6rem; }
  body.pg-site-b .hero-subtitle { font-size: 0.95rem; }
  body.pg-site-b .hero-logo { height: 60px; }
  body.pg-site-b .nav-links { padding: 1.5rem; }
  body.pg-site-b .gallery { grid-template-columns: 1fr; }
  body.pg-site-b .image-break { height: 250px; }
  body.pg-site-b .image-break-quote { font-size: 1.3rem; }
  body.pg-site-b section { padding: 2rem 1rem; }
}
@media (max-height: 500px) and (orientation: landscape) {
  body.pg-site-b nav { padding: 0.5rem 1.5rem; }
  body.pg-site-b .logo { height: 40px; }
  body.pg-site-b .hero { min-height: auto; height: 100vh; padding-top: 60px; }
  body.pg-site-b .hero-logo { height: 50px; margin-bottom: 1rem; }
  body.pg-site-b .hero h1 { font-size: 1.5rem; margin-bottom: 0.5rem; }
  body.pg-site-b .hero-subtitle { font-size: 0.85rem; margin-bottom: 1rem; }
  body.pg-site-b .cta-button { padding: 0.6rem 1.5rem; min-height: 40px; font-size: 0.85rem; }
}

/* ---------- OPTION C - Cream and Navy Editorial ---------- */

body.pg-site-c { font-family: 'Raleway', sans-serif; background-color: #FBF9F5; color: #0B1929; line-height: 1.6; overflow-x: hidden; }
body.pg-site-c { --cream: #FBF9F5; --navy: #0B1929; --gold: #B8965A; --slate: #4A5A6A; --light-cream: #F5F3F0; }
body.pg-site-c h1,
body.pg-site-c h2,
body.pg-site-c h3,
body.pg-site-c h4 { font-family: 'Cinzel', serif; color: var(--navy); font-weight: 600; }
body.pg-site-c .subheading { font-family: 'Cormorant Garamond', serif; font-style: italic; color: var(--slate); font-weight: 400; }
body.pg-site-c p { color: var(--slate); margin-bottom: 1rem; }
body.pg-site-c nav { position: fixed; top: 0; left: 0; right: 0; background-color: #FBF9F5; padding: 1.5rem 2rem; display: flex; justify-content: space-between; align-items: center; z-index: 1000; border-bottom: 1px solid transparent; transition: all 0.3s ease; }
body.pg-site-c nav.scrolled { border-bottom-color: var(--gold); box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05); }
body.pg-site-c .logo-nav { height: 55px; width: auto; }
body.pg-site-c .nav-menu { display: flex; gap: 2.5rem; list-style: none; }
body.pg-site-c .nav-menu a { text-decoration: none; color: var(--navy); font-weight: 500; font-size: 0.9rem; transition: color 0.3s ease; letter-spacing: 0.5px; }
body.pg-site-c .nav-menu a:hover { color: var(--gold); }
body.pg-site-c .hamburger { display: none; flex-direction: column; cursor: pointer; gap: 5px; padding: 10px; min-width: 44px; min-height: 44px; }
body.pg-site-c .hamburger span { width: 25px; height: 2px; background-color: var(--navy); transition: 0.3s; }
body.pg-site-c .hero { position: relative; min-height: 100vh; background: linear-gradient(rgba(11, 25, 41, 0.6), rgba(11, 25, 41, 0.6)), url('/img/03-24-2026-lana-royale-0004-1920.webp') center/cover no-repeat; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: white; overflow: hidden; }
body.pg-site-c .hero img { height: 120px; margin-bottom: 2rem; animation: c-fadeInDown 1s ease-out; }
body.pg-site-c .hero h1 { font-size: 3.5rem; color: white; margin-bottom: 1rem; font-weight: 700; letter-spacing: -1px; animation: c-fadeInUp 1s ease-out 0.2s both; text-shadow: 0 2px 8px rgba(0,0,0,0.5); }
body.pg-site-c .hero .subheading { font-size: 1.25rem; color: rgba(255, 255, 255, 0.95); margin-bottom: 1.5rem; max-width: 600px; animation: c-fadeInUp 1s ease-out 0.4s both; text-shadow: 0 1px 4px rgba(0,0,0,0.4); }
body.pg-site-c .hero p { font-size: 1.1rem; color: rgba(255, 255, 255, 0.9); max-width: 550px; margin-bottom: 2rem; animation: c-fadeInUp 1s ease-out 0.6s both; text-shadow: 0 1px 4px rgba(0,0,0,0.4); }
body.pg-site-c .cta-button { display: inline-block; padding: 1rem 2.5rem; border: 2px solid var(--gold); background-color: transparent; color: var(--gold); text-decoration: none; font-weight: 600; font-size: 0.95rem; letter-spacing: 1px; transition: all 0.3s ease; cursor: pointer; animation: c-fadeInUp 1s ease-out 0.8s both; min-height: 48px; }
body.pg-site-c .cta-button:hover { background-color: var(--gold); color: white; }
body.pg-site-c #about { padding: 5rem 2rem; scroll-margin-top: 80px; }
body.pg-site-c .about-container { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; max-width: 1400px; margin: 0 auto; }
body.pg-site-c .about-image { position: relative; overflow: hidden; aspect-ratio: 3/4; }
body.pg-site-c .about-image img { width: 100%; height: 100%; object-fit: cover; }
body.pg-site-c .about-content h2 { font-size: 2.5rem; margin-bottom: 1.5rem; line-height: 1.2; }
body.pg-site-c .about-content p { font-size: 1.05rem; margin-bottom: 1.5rem; line-height: 1.8; }
body.pg-site-c .mission-block { margin-top: 2.5rem; padding-left: 2rem; border-left: 4px solid var(--gold); background: linear-gradient(to right, rgba(184, 150, 90, 0.05), transparent); padding: 2rem; padding-left: 2rem; }
body.pg-site-c .mission-block p { font-style: italic; font-family: 'Cormorant Garamond', serif; font-size: 1.15rem; line-height: 1.8; color: var(--navy); }
body.pg-site-c #why-italy { background-color: var(--navy); color: #F5F3F0; padding: 5rem 2rem; text-align: center; scroll-margin-top: 80px; }
body.pg-site-c #why-italy h2 { color: #F5F3F0; font-size: 2.8rem; margin-bottom: 2rem; }
body.pg-site-c .gold-divider { width: 60px; height: 2px; background-color: var(--gold); margin: 0 auto 2rem; }
body.pg-site-c .why-italy-content { max-width: 800px; margin: 0 auto; font-size: 1.05rem; line-height: 1.9; color: rgba(245, 243, 240, 0.9); }
body.pg-site-c #services { padding: 5rem 2rem; max-width: 1400px; margin: 0 auto; scroll-margin-top: 80px; }
body.pg-site-c #services h2 { text-align: center; font-size: 2.5rem; margin-bottom: 3rem; }
body.pg-site-c .services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; }
body.pg-site-c .service-card { background-color: #F5F3F0; padding: 2.5rem; text-align: center; border-top: 3px solid var(--gold); transition: transform 0.3s ease, box-shadow 0.3s ease; }
body.pg-site-c .service-card:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(184, 150, 90, 0.1); }
body.pg-site-c .service-number { font-family: 'Cinzel', serif; color: var(--navy); font-size: 2.5rem; font-weight: 700; margin-bottom: 1rem; }
body.pg-site-c .service-card h3 { font-size: 1.4rem; margin-bottom: 1rem; }
body.pg-site-c .service-card p { font-size: 0.95rem; }
body.pg-site-c #partners { padding: 5rem 2rem; background-color: #F5F3F0; scroll-margin-top: 80px; }
body.pg-site-c #partners h2 { text-align: center; font-size: 2.5rem; margin-bottom: 3rem; }
body.pg-site-c .partners-container { max-width: 1400px; margin: 0 auto; }
body.pg-site-c .partner-category { margin-bottom: 3rem; }
body.pg-site-c .partner-category h3 { font-size: 1.5rem; margin-bottom: 1.5rem; padding-bottom: 0.75rem; border-bottom: 2px solid var(--gold); }
body.pg-site-c .partners-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; }
body.pg-site-c .partner-item { background-color: white; padding: 1.5rem; border-left: 3px solid var(--gold); }
body.pg-site-c .partner-item h4 { font-size: 1.1rem; margin-bottom: 0.5rem; }
body.pg-site-c .partner-item a { color: var(--gold); text-decoration: none; font-size: 0.9rem; transition: color 0.3s ease; }
body.pg-site-c .partner-item a:hover { color: var(--navy); text-decoration: underline; }
body.pg-site-c #showroom { padding: 5rem 2rem; scroll-margin-top: 80px; }
body.pg-site-c #showroom h2 { text-align: center; font-size: 2.5rem; margin-bottom: 1rem; }
body.pg-site-c .showroom-address { text-align: center; margin-bottom: 3rem; font-size: 1rem; color: var(--slate); }
body.pg-site-c .gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; max-width: 1400px; margin: 0 auto; }
body.pg-site-c .gallery-item { aspect-ratio: 1; overflow: hidden; position: relative; background-color: #E8E5E0; }
body.pg-site-c .gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
body.pg-site-c .gallery-item:hover img { transform: scale(1.05); }
body.pg-site-c #contact { padding: 5rem 2rem; background-color: #F5F3F0; scroll-margin-top: 80px; }
body.pg-site-c #contact h2 { text-align: center; font-size: 2.5rem; margin-bottom: 3rem; }
body.pg-site-c .contact-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; max-width: 1200px; margin: 0 auto; }
body.pg-site-c .contact-info { background-color: var(--navy); color: white; padding: 3rem; display: flex; flex-direction: column; justify-content: center; }
body.pg-site-c .contact-info h3 { font-size: 1.5rem; margin-bottom: 2rem; color: white; }
body.pg-site-c .contact-item { margin-bottom: 2rem; }
body.pg-site-c .contact-item label { display: block; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1px; color: var(--gold); margin-bottom: 0.5rem; }
body.pg-site-c .contact-item p { font-size: 1.2rem; color: white; }
body.pg-site-c .contact-form { display: flex; flex-direction: column; }
body.pg-site-c .form-group { margin-bottom: 1.5rem; }
body.pg-site-c .form-group label { display: block; margin-bottom: 0.5rem; font-weight: 500; color: var(--navy); }
body.pg-site-c .form-group input,
body.pg-site-c .form-group textarea { width: 100%; padding: 0.75rem; border: 1px solid var(--slate); background-color: white; color: var(--navy); font-family: 'Raleway', sans-serif; transition: border-color 0.3s ease; }
body.pg-site-c .form-group input:focus,
body.pg-site-c .form-group textarea:focus { outline: none; border-color: var(--gold); box-shadow: 0 0 0 2px rgba(184, 150, 90, 0.1); }
body.pg-site-c .form-group textarea { resize: vertical; min-height: 120px; }
body.pg-site-c .form-submit { align-self: flex-start; padding: 0.75rem 2rem; background-color: var(--navy); color: white; border: none; cursor: pointer; font-weight: 600; letter-spacing: 0.5px; transition: all 0.3s ease; }
body.pg-site-c .form-submit:hover { background-color: var(--gold); color: var(--navy); }
body.pg-site-c footer { background-color: var(--navy); color: white; padding: 3rem 2rem; text-align: center; }
body.pg-site-c footer .logo-nav { height: 30px; margin-bottom: 1.5rem; filter: brightness(0) invert(1); }
body.pg-site-c footer .gold-divider { margin: 1.5rem auto; }
body.pg-site-c footer p { color: rgba(245, 243, 240, 0.7); font-size: 0.9rem; }
@keyframes c-fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
@keyframes c-fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
body.pg-site-c .fade-in { opacity: 0; transform: translateY(20px); animation: c-fadeInUp 0.6s ease-out forwards; }
@media (max-height: 500px) {
  body.pg-site-c .hero { min-height: 70vh; }
}
@media (max-width: 900px) {
  body.pg-site-c .nav-menu { gap: 1.5rem; font-size: 0.85rem; }
  body.pg-site-c .hero h1 { font-size: 2.5rem; }
  body.pg-site-c .about-container { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-c .services-grid { grid-template-columns: repeat(2, 1fr); }
  body.pg-site-c .gallery-grid { grid-template-columns: repeat(2, 1fr); }
  body.pg-site-c .contact-wrapper { grid-template-columns: 1fr; }
  body.pg-site-c #why-italy h2 { font-size: 2rem; }
  body.pg-site-c #services h2,
body.pg-site-c #partners h2,
body.pg-site-c #showroom h2,
body.pg-site-c #contact h2 { font-size: 2rem; }
}
@media (max-width: 480px) {
  body.pg-site-c nav { padding: 1rem; }
  body.pg-site-c .nav-menu { display: none; position: absolute; top: 70px; left: 0; right: 0; flex-direction: column; background-color: #FBF9F5; padding: 2rem; gap: 1rem; border-bottom: 1px solid var(--gold); }
  body.pg-site-c .nav-menu.active { display: flex; }
  body.pg-site-c .hamburger { display: flex; }
  body.pg-site-c .hero h1 { font-size: 1.8rem; }
  body.pg-site-c .hero img { height: 80px; }
  body.pg-site-c .hero .subheading { font-size: 0.95rem; }
  body.pg-site-c .about-content h2 { font-size: 1.8rem; }
  body.pg-site-c .services-grid { grid-template-columns: 1fr; }
  body.pg-site-c .gallery-grid { grid-template-columns: 1fr; }
  body.pg-site-c .contact-wrapper { grid-template-columns: 1fr; }
  body.pg-site-c #about,
body.pg-site-c #services,
body.pg-site-c #partners,
body.pg-site-c #showroom,
body.pg-site-c #contact,
body.pg-site-c #why-italy { padding: 2.5rem 1.2rem; }
  body.pg-site-c .partners-list { grid-template-columns: 1fr; }
}

/* ---------- OPTION D - Minimal Parchment ---------- */

body.pg-site-d { font-family: 'Raleway', sans-serif; background-color: #FAFAF8; color: #3A3A3A; line-height: 1.7; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
body.pg-site-d h1,
body.pg-site-d h2,
body.pg-site-d h3 { font-family: 'Cinzel', serif; color: #1A1A1A; font-weight: 600; }
body.pg-site-d h1 { font-size: 4rem; font-weight: 600; letter-spacing: 0.5px; line-height: 1.1; margin-bottom: 1.5rem; }
body.pg-site-d h2 { font-size: 2.5rem; font-weight: 600; margin-bottom: 2rem; letter-spacing: 0.3px; }
body.pg-site-d h3 { font-size: 1.5rem; font-weight: 600; margin-bottom: 1.5rem; }
body.pg-site-d p { margin-bottom: 1.5rem; color: #3A3A3A; font-size: 1.05rem; }
body.pg-site-d .italic-sub { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.4rem; color: #7A7A78; margin-bottom: 2rem; }
body.pg-site-d .secondary-text { color: #7A7A78; font-size: 0.95rem; text-transform: uppercase; letter-spacing: 1px; }
body.pg-site-d a { color: #1A1A1A; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.3s ease; }
body.pg-site-d a:hover { border-bottom: 1px solid #1A1A1A; }
body.pg-site-d nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; display: flex; justify-content: space-between; align-items: center; padding: 2rem 3rem; background-color: rgba(250, 250, 248, 0); transition: background-color 0.3s ease; }
body.pg-site-d nav.scrolled { background-color: rgba(250, 250, 248, 0.95); border-bottom: 1px solid #E8E8E6; }
body.pg-site-d nav .logo img { height: 55px; width: auto; }
body.pg-site-d nav .nav-links { display: flex; gap: 3rem; list-style: none; }
body.pg-site-d nav .nav-links a { font-size: 0.95rem; text-transform: uppercase; letter-spacing: 0.8px; font-weight: 500; color: #1A1A1A; }
body.pg-site-d .hamburger { display: none; flex-direction: column; cursor: pointer; gap: 5px; padding: 10px; min-width: 44px; min-height: 44px; }
body.pg-site-d .hamburger span { width: 25px; height: 2px; background-color: #1A1A1A; transition: all 0.3s ease; }
body.pg-site-d .hero { margin-top: 80px; display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh; align-items: center; }
body.pg-site-d .hero-image { width: 100%; height: 100%; overflow: hidden; background-color: #E8E8E6; }
body.pg-site-d .hero-image img { width: 100%; height: 100%; object-fit: cover; }
body.pg-site-d .hero-content { padding: 4rem 5rem; background-color: #FAFAF8; display: flex; flex-direction: column; justify-content: center; }
body.pg-site-d .hero-content h1 { margin-bottom: 1rem; }
body.pg-site-d .hero-tagline { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.3rem; color: #7A7A78; margin-bottom: 2.5rem; line-height: 1.6; }
body.pg-site-d .hero-subtitle { font-size: 1rem; color: #7A7A78; margin-bottom: 3rem; max-width: 90%; line-height: 1.8; }
body.pg-site-d .hero-cta { display: inline-block; font-size: 1rem; color: #1A1A1A; font-weight: 500; transition: all 0.3s ease; width: fit-content; }
body.pg-site-d .hero-cta:hover { margin-left: 0.5rem; }
body.pg-site-d section { padding: 6rem 3rem; scroll-margin-top: 80px; }
body.pg-site-d .content-center { max-width: 700px; margin: 0 auto; }
body.pg-site-d .full-width-image { width: 100%; margin: 4rem 0; display: block; background-color: #E8E8E6; }
body.pg-site-d .about { background-color: #FAFAF8; }
body.pg-site-d .mission-blockquote { margin: 4rem 0; padding-left: 2rem; border-left: 3px solid #1A1A1A; font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.2rem; color: #1A1A1A; line-height: 1.9; }
body.pg-site-d .why-italy { background-color: #FAFAF8; }
body.pg-site-d .services { background-color: #FAFAF8; }
body.pg-site-d .service-item { margin: 3rem 0; padding-bottom: 3rem; border-bottom: 1px solid #D8D8D6; }
body.pg-site-d .service-item:last-child { border-bottom: none; }
body.pg-site-d .service-number { font-family: 'Cinzel', serif; font-size: 3rem; color: #1A1A1A; font-weight: 600; margin-bottom: 1.5rem; }
body.pg-site-d .service-title { font-size: 1.8rem; font-weight: 600; margin-bottom: 1rem; color: #1A1A1A; }
body.pg-site-d .service-description { font-size: 1rem; color: #3A3A3A; max-width: 600px; }
body.pg-site-d .partners { background-color: #FAFAF8; }
body.pg-site-d .partners-category { margin-bottom: 4rem; }
body.pg-site-d .partners-category h3 { font-size: 1.3rem; margin-bottom: 2rem; text-transform: uppercase; letter-spacing: 0.8px; font-weight: 600; }
body.pg-site-d .partners-list { list-style: none; margin-left: 0; }
body.pg-site-d .partners-list li { margin-bottom: 1rem; font-size: 1rem; color: #3A3A3A; }
body.pg-site-d .partners-list a { color: #1A1A1A; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.3s ease; display: block; padding: 8px 0; }
body.pg-site-d .partners-list a:hover { border-bottom: 1px solid #1A1A1A; }
body.pg-site-d .showroom { background-color: #FAFAF8; }
body.pg-site-d .showroom-info { text-align: center; margin-bottom: 4rem; }
body.pg-site-d .showroom-address { font-size: 1.1rem; color: #3A3A3A; line-height: 1.8; }
body.pg-site-d .gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-top: 3rem; }
body.pg-site-d .gallery-item { overflow: hidden; background-color: #E8E8E6; aspect-ratio: 1; }
body.pg-site-d .gallery-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.pg-site-d .contact { background-color: #FAFAF8; }
body.pg-site-d .contact-info { text-align: center; margin-bottom: 3rem; }
body.pg-site-d .contact-info p { font-size: 1.1rem; margin-bottom: 0.5rem; }
body.pg-site-d .contact-form { max-width: 500px; margin: 0 auto; }
body.pg-site-d .form-group { margin-bottom: 2rem; }
body.pg-site-d .form-group label { display: block; font-size: 0.9rem; text-transform: uppercase; letter-spacing: 0.8px; margin-bottom: 0.5rem; color: #1A1A1A; font-weight: 600; }
body.pg-site-d .form-group input,
body.pg-site-d .form-group textarea { width: 100%; padding: 1rem; border: 1px solid #D8D8D6; background-color: #FAFAF8; font-family: 'Raleway', sans-serif; font-size: 1rem; color: #3A3A3A; transition: border-color 0.3s ease; }
body.pg-site-d .form-group input:focus,
body.pg-site-d .form-group textarea:focus { outline: none; border-color: #1A1A1A; }
body.pg-site-d .form-group textarea { resize: vertical; min-height: 120px; }
body.pg-site-d .form-submit { background-color: transparent; border: 1px solid #1A1A1A; padding: 1rem 2.5rem; font-family: 'Raleway', sans-serif; font-size: 0.95rem; text-transform: uppercase; letter-spacing: 1px; color: #1A1A1A; cursor: pointer; transition: all 0.3s ease; font-weight: 600; }
body.pg-site-d .form-submit:hover { background-color: #1A1A1A; color: #FAFAF8; }
body.pg-site-d footer { border-top: 1px solid #D8D8D6; padding: 4rem 3rem; background-color: #FAFAF8; text-align: center; }
body.pg-site-d footer .logo { margin-bottom: 2rem; }
body.pg-site-d footer .logo img { height: 25px; width: auto; }
body.pg-site-d footer p { font-size: 0.9rem; color: #7A7A78; margin: 0; }
body.pg-site-d .fade-in { opacity: 0; transition: opacity 0.8s ease; }
body.pg-site-d .fade-in.visible { opacity: 1; }
@media (max-height: 500px) {
  body.pg-site-d .hero { min-height: auto; }
}
@media (max-width: 900px) {
  body.pg-site-d h1 { font-size: 2.8rem; }
  body.pg-site-d h2 { font-size: 2rem; }
  body.pg-site-d nav { padding: 1.5rem 2rem; }
  body.pg-site-d nav .nav-links { display: none; }
  body.pg-site-d nav.mobile-open .nav-links { display: flex; position: absolute; top: 70px; left: 0; right: 0; flex-direction: column; gap: 1.5rem; padding: 2rem; background-color: rgba(250, 250, 248, 0.98); border-bottom: 1px solid #E8E8E6; }
  body.pg-site-d .hamburger { display: flex; }
  body.pg-site-d .hero { grid-template-columns: 1fr; min-height: auto; margin-top: 70px; }
  body.pg-site-d .hero-image { height: 300px; }
  body.pg-site-d .hero-content { padding: 3rem 2rem; }
  body.pg-site-d section { padding: 4rem 2rem; }
  body.pg-site-d .gallery { grid-template-columns: 1fr; }
  body.pg-site-d .gallery-item { aspect-ratio: 4/3; }
}
@media (max-width: 480px) {
  body.pg-site-d h1 { font-size: 2rem; margin-bottom: 1rem; }
  body.pg-site-d h2 { font-size: 1.5rem; }
  body.pg-site-d p { font-size: 0.95rem; }
  body.pg-site-d nav { padding: 1rem 1.5rem; }
  body.pg-site-d nav .logo img { height: 25px; }
  body.pg-site-d nav.mobile-open .nav-links { padding: 1.5rem; gap: 1rem; }
  body.pg-site-d .hero-content { padding: 2rem 1.5rem; }
  body.pg-site-d .hero-tagline { font-size: 1.1rem; }
  body.pg-site-d .hero-subtitle { font-size: 0.95rem; }
  body.pg-site-d section { padding: 2.5rem 1.2rem; }
  body.pg-site-d .content-center { max-width: 100%; }
  body.pg-site-d .mission-blockquote { font-size: 1rem; padding-left: 1.5rem; }
  body.pg-site-d .service-number { font-size: 2rem; }
  body.pg-site-d .service-title { font-size: 1.3rem; }
  body.pg-site-d .partners-category h3 { font-size: 1.1rem; }
  body.pg-site-d .showroom-address { font-size: 0.95rem; }
  body.pg-site-d .contact-form { max-width: 100%; }
  body.pg-site-d footer { padding: 2.5rem 1.5rem; }
}

/* ---------- OPTION E - Hero Image Slider + theme switcher ---------- */

body.pg-site-e { --cream: #FBF8F2; --gold: #C8A064; --dark: #1A1714; --light-gray: #F5F2ED; --text: #2A2722; --card-bg: #FFFFFF; --border: #e8e3d8; --input-bg: #FFFFFF; --input-border: #d0c8b8; --footer-text: #b8b3a8; --blockquote-bg: transparent; --why-bg: linear-gradient(135deg, rgba(200, 160, 100, 0.08) 0%, rgba(200, 160, 100, 0.04) 100%); }
html[data-theme="dark"] body.pg-site-e { --cream: #0D0D0B; --dark: #F0EDE6; --light-gray: #161614; --text: #C8C4BC; --card-bg: #1A1917; --border: #2A2826; --input-bg: #1A1917; --input-border: #3A3835; --footer-text: #7A7670; --blockquote-bg: rgba(200, 160, 100, 0.05); --why-bg: linear-gradient(135deg, rgba(200, 160, 100, 0.06) 0%, rgba(200, 160, 100, 0.02) 100%); }
body.pg-site-e { font-family: 'Cormorant Garamond', serif; color: var(--text); background-color: var(--cream); line-height: 1.6; overflow-x: hidden; }
body.pg-site-e nav { position: fixed; top: 0; left: 0; right: 0; height: 90px; display: flex; justify-content: space-between; align-items: center; padding: 0 40px; z-index: 1000; transition: all 0.3s ease; background: transparent; }
body.pg-site-e nav.scrolled { background: var(--cream); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); border-bottom: 1px solid var(--border); }
body.pg-site-e .nav-logo { width: 100px; height: 100px; object-fit: contain; }
body.pg-site-e .nav-links { display: flex; gap: 35px; list-style: none; }
body.pg-site-e .nav-links a { text-decoration: none; color: #FFFFFF; font-family: 'Raleway', sans-serif; font-size: 13px; font-weight: 500; letter-spacing: 0.8px; transition: color 0.3s ease; }
body.pg-site-e nav.scrolled .nav-links a { color: var(--dark); }
body.pg-site-e .nav-links a:hover { color: var(--gold); }
body.pg-site-e nav.hero-transparent .nav-links a { color: white; }
body.pg-site-e nav.hero-transparent .nav-logo { filter: brightness(0) invert(1); }
body.pg-site-e .hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; background: none; border: none; padding: 10px; min-width: 44px; min-height: 44px; }
body.pg-site-e .hamburger span { width: 24px; height: 2px; background: var(--dark); transition: all 0.3s ease; }
body.pg-site-e nav.hero-transparent .hamburger span { background: white; }
body.pg-site-e .hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(8px, 8px); }
body.pg-site-e .hamburger.active span:nth-child(2) { opacity: 0; }
body.pg-site-e .hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(7px, -7px); }
body.pg-site-e .mobile-menu { display: none; position: absolute; top: 70px; left: 0; right: 0; background: var(--cream); padding: 20px; flex-direction: column; gap: 15px; z-index: 999; border-bottom: 1px solid var(--border); }
body.pg-site-e .mobile-menu a { text-decoration: none; color: var(--dark); font-family: 'Raleway', sans-serif; font-size: 14px; font-weight: 500; transition: color 0.3s ease; }
body.pg-site-e .mobile-menu a:hover { color: var(--gold); }
body.pg-site-e .theme-switcher { display: flex; align-items: center; gap: 4px; background: rgba(255,255,255,0.15); border-radius: 20px; padding: 3px; margin-left: 20px; backdrop-filter: blur(4px); transition: background 0.3s ease; }
body.pg-site-e nav.scrolled .theme-switcher { background: var(--light-gray); }
body.pg-site-e .theme-btn { background: none; border: none; cursor: pointer; padding: 5px 8px; border-radius: 14px; display: flex; align-items: center; justify-content: center; transition: all 0.2s ease; color: rgba(255,255,255,0.7); font-size: 14px; line-height: 1; }
body.pg-site-e nav.scrolled .theme-btn { color: var(--text); }
body.pg-site-e .theme-btn.active { background: var(--gold); color: white; }
body.pg-site-e nav.scrolled .theme-btn.active { background: var(--gold); color: white; }
body.pg-site-e .theme-btn:hover:not(.active) { color: white; }
body.pg-site-e nav.scrolled .theme-btn:hover:not(.active) { color: var(--dark); }
@media (max-width: 900px) {
  body.pg-site-e .theme-switcher { position: absolute; right: 60px; top: 50%; transform: translateY(-50%); }
}
@media (max-width: 480px) {
  body.pg-site-e .theme-switcher { right: 55px; }
  body.pg-site-e .theme-btn { padding: 4px 6px; font-size: 12px; }
}
body.pg-site-e .hero { position: relative; width: 100%; height: 100vh; overflow: hidden; margin-top: 0; margin-top: 0; }
body.pg-site-e .hero-slider { position: relative; width: 100%; height: 100%; }
body.pg-site-e .slider-slide { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 0.8s ease-in-out; background-size: cover; background-position: center; }
body.pg-site-e .slider-slide.active { opacity: 1; }
body.pg-site-e .slider-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.55); display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; z-index: 10; }
body.pg-site-e .slider-content { color: white; max-width: 700px; padding: 20px; }
body.pg-site-e .slider-logo { width: 140px; height: 140px; object-fit: contain; margin-bottom: 20px; filter: brightness(0) invert(1); }
body.pg-site-e .slider-title { font-family: 'Cinzel', serif; font-size: 48px; font-weight: 700; letter-spacing: 2px; margin-bottom: 15px; line-height: 1.2; }
body.pg-site-e .slider-subtitle { font-family: 'Cormorant Garamond', serif; font-size: 20px; font-weight: 400; margin-bottom: 10px; letter-spacing: 1px; }
body.pg-site-e .slider-description { font-family: 'Cormorant Garamond', serif; font-size: 16px; font-weight: 400; line-height: 1.8; margin-bottom: 30px; opacity: 0.95; }
body.pg-site-e .slider-cta { display: inline-block; background: var(--gold); color: white; padding: 14px 40px; text-decoration: none; font-family: 'Raleway', sans-serif; font-size: 13px; font-weight: 600; letter-spacing: 1px; border: 2px solid var(--gold); cursor: pointer; transition: all 0.3s ease; min-height: 48px; display: inline-flex; align-items: center; }
body.pg-site-e .slider-cta:hover { background: transparent; color: var(--gold); }
body.pg-site-e .slider-dots { position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%); display: flex; gap: 10px; z-index: 20; }
body.pg-site-e .dot { width: 16px; height: 16px; border-radius: 50%; background: rgba(255, 255, 255, 0.5); cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.7); padding: 6px; }
body.pg-site-e .dot.active { background: var(--gold); border-color: var(--gold); width: 16px; height: 16px; }
body.pg-site-e section { scroll-margin-top: 90px; }
body.pg-site-e .about { padding: 80px 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
body.pg-site-e .about-text h2,
body.pg-site-e .why-italy h2,
body.pg-site-e .services h2,
body.pg-site-e .partners h2,
body.pg-site-e .showroom h2,
body.pg-site-e .contact h2 { font-family: 'Cinzel', serif; font-size: 36px; font-weight: 700; margin-bottom: 25px; letter-spacing: 1px; color: var(--dark); }
body.pg-site-e .about-text p,
body.pg-site-e .why-italy p { font-size: 16px; line-height: 1.8; margin-bottom: 18px; color: var(--text); }
body.pg-site-e .about-blockquote { border-left: 4px solid var(--gold); padding-left: 25px; margin: 35px 0; font-size: 18px; font-style: italic; color: var(--dark); background: var(--blockquote-bg); padding: 25px; }
body.pg-site-e .about-image { width: 100%; height: 500px; object-fit: cover; border: 1px solid var(--border); }
body.pg-site-e .why-italy { background: var(--why-bg); padding: 80px 40px; }
body.pg-site-e .services { padding: 80px 40px; }
body.pg-site-e .services h2 { text-align: center; margin-bottom: 60px; }
body.pg-site-e .services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
body.pg-site-e .service-card { background: var(--card-bg); padding: 40px; border: 1px solid var(--border); transition: all 0.3s ease; }
body.pg-site-e .service-card:hover { box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); transform: translateY(-5px); }
body.pg-site-e .service-card h3 { font-family: 'Cinzel', serif; font-size: 20px; font-weight: 600; margin-bottom: 15px; color: var(--dark); border-bottom: 2px solid var(--gold); padding-bottom: 12px; }
body.pg-site-e .service-card p { font-size: 14px; line-height: 1.7; color: var(--text); }
body.pg-site-e .partners { padding: 80px 40px; background: var(--light-gray); }
body.pg-site-e .partners h2 { text-align: center; margin-bottom: 60px; }
body.pg-site-e .partners-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
body.pg-site-e .partner-category h3 { font-family: 'Cinzel', serif; font-size: 20px; font-weight: 600; margin-bottom: 30px; color: var(--dark); border-bottom: 2px solid var(--gold); padding-bottom: 12px; }
body.pg-site-e .partner-list { list-style: none; }
body.pg-site-e .partner-list li { margin-bottom: 18px; padding-bottom: 15px; border-bottom: 1px solid var(--border); }
body.pg-site-e .partner-list li:last-child { border-bottom: none; }
body.pg-site-e .partner-list a { text-decoration: none; color: var(--dark); font-size: 16px; transition: color 0.3s ease; }
body.pg-site-e .partner-list a:hover { color: var(--gold); }
body.pg-site-e .showroom { padding: 80px 40px; }
body.pg-site-e .showroom h2 { text-align: center; margin-bottom: 20px; }
body.pg-site-e .showroom-address { text-align: center; font-size: 16px; color: var(--text); margin-bottom: 60px; line-height: 1.8; }
body.pg-site-e .gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
body.pg-site-e .gallery-item { width: 100%; height: 300px; overflow: hidden; border: 1px solid var(--border); }
body.pg-site-e .gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
body.pg-site-e .gallery-item:hover img { transform: scale(1.05); }
body.pg-site-e .contact { padding: 80px 40px; background: var(--light-gray); }
body.pg-site-e .contact h2 { margin-bottom: 50px; }
body.pg-site-e .contact-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
body.pg-site-e .contact-info h3 { font-family: 'Cinzel', serif; font-size: 18px; font-weight: 600; margin-bottom: 20px; color: var(--dark); }
body.pg-site-e .contact-info p { font-size: 16px; margin-bottom: 15px; color: var(--text); }
body.pg-site-e .contact-info a { color: var(--gold); text-decoration: none; transition: color 0.3s ease; }
body.pg-site-e .contact-info a:hover { color: var(--dark); }
body.pg-site-e .contact-form { display: flex; flex-direction: column; gap: 20px; }
body.pg-site-e .contact-form input,
body.pg-site-e .contact-form textarea { padding: 14px; border: 1px solid var(--input-border); background: var(--input-bg); font-family: 'Cormorant Garamond', serif; font-size: 15px; color: var(--text); transition: border-color 0.3s ease; }
body.pg-site-e .contact-form input:focus,
body.pg-site-e .contact-form textarea:focus { outline: none; border-color: var(--gold); }
body.pg-site-e .contact-form textarea { resize: vertical; min-height: 140px; }
body.pg-site-e .contact-submit { background: var(--gold); color: white; padding: 14px 30px; border: 2px solid var(--gold); font-family: 'Raleway', sans-serif; font-size: 13px; font-weight: 600; letter-spacing: 1px; cursor: pointer; transition: all 0.3s ease; text-transform: uppercase; }
body.pg-site-e .contact-submit:hover { background: transparent; color: var(--gold); }
body.pg-site-e footer { background: #1A1714; padding: 50px 40px; text-align: center; border-top: 1px solid var(--gold); }
html[data-theme="dark"] body.pg-site-e footer { background: #050504; }
body.pg-site-e .footer-logo { width: 35px; height: 35px; object-fit: contain; margin-bottom: 20px; }
body.pg-site-e footer p { color: var(--footer-text); font-size: 14px; letter-spacing: 0.5px; }
body.pg-site-e .fade-in { opacity: 0; transform: translateY(30px); transition: all 0.6s ease; }
body.pg-site-e .fade-in.visible { opacity: 1; transform: translateY(0); }
@media (max-width: 900px) {
  body.pg-site-e .about { grid-template-columns: 1fr; gap: 40px; }
  body.pg-site-e .about-image { height: 400px; }
  body.pg-site-e .services-grid { grid-template-columns: 1fr 1fr; }
  body.pg-site-e .partners-grid { grid-template-columns: 1fr; }
  body.pg-site-e .contact-wrapper { grid-template-columns: 1fr; }
  body.pg-site-e .nav-links { display: none; }
  body.pg-site-e .hamburger { display: flex; }
  body.pg-site-e .mobile-menu.active { display: flex; }
  body.pg-site-e .slider-title { font-size: 36px; }
  body.pg-site-e .slider-subtitle { font-size: 18px; }
  body.pg-site-e .gallery-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  body.pg-site-e nav { padding: 0 20px; height: 70px; }
  body.pg-site-e .nav-logo { width: 60px; height: 60px; }
  body.pg-site-e .about,
body.pg-site-e .why-italy,
body.pg-site-e .services,
body.pg-site-e .partners,
body.pg-site-e .showroom,
body.pg-site-e .contact { padding: 50px 20px; }
  body.pg-site-e .about-text h2,
body.pg-site-e .why-italy h2,
body.pg-site-e .services h2,
body.pg-site-e .partners h2,
body.pg-site-e .showroom h2,
body.pg-site-e .contact h2 { font-size: 28px; }
  body.pg-site-e .about-image { height: 300px; }
  body.pg-site-e .services-grid,
body.pg-site-e .partners-grid { grid-template-columns: 1fr; }
  body.pg-site-e .slider-title { font-size: 28px; }
  body.pg-site-e .slider-subtitle { font-size: 16px; }
  body.pg-site-e .slider-description { font-size: 14px; }
  body.pg-site-e .gallery-grid { grid-template-columns: 1fr; gap: 15px; }
  body.pg-site-e .gallery-item { height: 250px; }
}
@media (max-height: 500px) {
  body.pg-site-e .hero,
body.pg-site-e .hero-slider { min-height: 70vh; height: 70vh; }
  body.pg-site-e nav { height: 60px; }
}

/* ---------- OPTION F - Asymmetric Modern ---------- */

body.pg-site-f { font-family: 'Raleway', sans-serif; background-color: #FDFBF7; color: #0B1929; line-height: 1.6; overflow-x: hidden; }
body.pg-site-f h1,
body.pg-site-f h2,
body.pg-site-f h3 { font-family: 'Cinzel', serif; font-weight: 700; }
body.pg-site-f h1 { font-size: 3.5rem; letter-spacing: -0.5px; margin-bottom: 1rem; }
body.pg-site-f h2 { font-size: 2.5rem; margin-bottom: 1.5rem; }
body.pg-site-f h3 { font-size: 1.8rem; margin-bottom: 1rem; }
body.pg-site-f .tagline { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.3rem; color: #0B1929; margin-bottom: 1.5rem; line-height: 1.8; }
body.pg-site-f .subtle-text { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.1rem; color: #666; }
body.pg-site-f .side-nav { position: fixed; left: 0; top: 0; height: 100vh; width: 60px; background-color: #FDFBF7; border-right: 1px solid #E0D5C8; z-index: 1000; display: flex; align-items: center; justify-content: center; padding: 40px 0; overflow: hidden; }
body.pg-site-f .side-nav-links { display: flex; flex-direction: column; gap: 2rem; height: 100%; justify-content: center; }
body.pg-site-f .side-nav-link { writing-mode: vertical-rl; transform: rotate(180deg); text-decoration: none; color: #999; font-size: 0.75rem; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; transition: color 0.3s ease; cursor: pointer; white-space: nowrap; }
body.pg-site-f .side-nav-link:hover,
body.pg-site-f .side-nav-link.active { color: #C8A064; }
body.pg-site-f .mobile-nav { display: none; position: fixed; top: 0; left: 0; right: 0; height: 70px; background-color: #FDFBF7; border-bottom: 1px solid #E0D5C8; z-index: 1001; padding: 15px 20px; align-items: center; justify-content: space-between; }
body.pg-site-f .mobile-nav.visible { display: flex; }
body.pg-site-f .mobile-logo { width: 75px; height: auto; }
body.pg-site-f .hamburger { width: 40px; height: 40px; display: flex; flex-direction: column; justify-content: space-around; cursor: pointer; background: none; border: none; min-width: 44px; min-height: 44px; }
body.pg-site-f .hamburger span { width: 100%; height: 2px; background-color: #0B1929; transition: all 0.3s ease; }
body.pg-site-f .hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(10px, 10px); }
body.pg-site-f .hamburger.active span:nth-child(2) { opacity: 0; }
body.pg-site-f .hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(7px, -7px); }
body.pg-site-f .mobile-menu { display: none; position: fixed; top: 70px; left: 0; right: 0; background-color: #FDFBF7; border-bottom: 1px solid #E0D5C8; z-index: 1000; padding: 20px; flex-direction: column; gap: 15px; }
body.pg-site-f .mobile-menu.active { display: flex; }
body.pg-site-f .mobile-menu-link { text-decoration: none; color: #0B1929; font-weight: 600; font-size: 0.95rem; padding: 10px 0; border-bottom: 1px solid #E0D5C8; transition: color 0.3s ease; }
body.pg-site-f .mobile-menu-link:hover { color: #C8A064; }
body.pg-site-f main { margin-left: 60px; }
@media (max-width: 900px) {
  body.pg-site-f .side-nav { display: none; }
  body.pg-site-f main { margin-left: 0; }
  body.pg-site-f .mobile-nav.visible { display: flex; }
  body.pg-site-f h1 { font-size: 2.5rem; }
  body.pg-site-f h2 { font-size: 2rem; }
}
@media (max-width: 480px) {
  body.pg-site-f { font-size: 14px; }
  body.pg-site-f section { padding: 40px 20px; }
  body.pg-site-f .watermark-number { display: none; }
  body.pg-site-f h1 { font-size: 1.8rem; }
  body.pg-site-f h2 { font-size: 1.5rem; }
  body.pg-site-f h3 { font-size: 1.4rem; }
  body.pg-site-f .hero-logo { width: 120px; }
}
body.pg-site-f section { position: relative; scroll-margin-top: 70px; }
body.pg-site-f .watermark-number { position: absolute; font-family: 'Cinzel', serif; font-size: 12rem; font-weight: 700; opacity: 0.03; top: -3rem; right: 2rem; left: auto; color: #0B1929; z-index: 0; line-height: 1; pointer-events: none; user-select: none; }
body.pg-site-f #hero { height: 100vh; display: flex; overflow: hidden; }
body.pg-site-f .hero-image { width: 55%; height: 100%; overflow: hidden; }
body.pg-site-f .hero-image img { width: 100%; height: 100%; object-fit: cover; }
body.pg-site-f .hero-content { width: 45%; background-color: #FDFBF7; padding: 60px 50px; display: flex; flex-direction: column; justify-content: center; position: relative; }
body.pg-site-f .hero-logo { width: 180px; height: auto; margin-bottom: 40px; }
body.pg-site-f .hero-heading { font-size: 2.8rem; font-family: 'Cinzel', serif; font-weight: 700; margin-bottom: 1.5rem; letter-spacing: -0.5px; }
body.pg-site-f .hero-tagline { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.1rem; color: #666; margin-bottom: 2rem; max-width: 90%; line-height: 1.8; }
body.pg-site-f .hero-description { font-size: 0.95rem; color: #555; line-height: 1.8; margin-bottom: 2.5rem; max-width: 90%; }
body.pg-site-f .hero-cta { color: #C8A064; text-decoration: none; font-weight: 600; font-size: 1rem; transition: color 0.3s ease; border-bottom: 2px solid #C8A064; padding-bottom: 0.3rem; display: inline-block; }
body.pg-site-f .hero-cta:hover { color: #0B1929; border-bottom-color: #0B1929; }
@media (max-width: 900px) {
  body.pg-site-f #hero { flex-direction: column; height: auto; }
  body.pg-site-f .hero-image { width: 100%; height: 50vh; }
  body.pg-site-f .hero-content { width: 100%; padding: 40px 30px; }
  body.pg-site-f .hero-heading { font-size: 2.2rem; }
}
body.pg-site-f #about { padding: 100px 60px; display: flex; align-items: center; gap: 60px; }
body.pg-site-f .about-text { width: 60%; position: relative; z-index: 2; }
body.pg-site-f .about-image { width: 40%; overflow: hidden; position: relative; }
body.pg-site-f .about-image img { width: 100%; height: auto; display: block; transform: translateY(-10px); }
body.pg-site-f .about-blockquote { background-color: #F5F0EB; padding: 30px; margin: 30px 0; border-left: 4px solid #C8A064; font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.2rem; color: #0B1929; line-height: 1.8; }
@media (max-width: 900px) {
  body.pg-site-f #about { flex-direction: column; padding: 60px 30px; gap: 30px; }
  body.pg-site-f .about-text { width: 100%; }
  body.pg-site-f .about-image { width: 100%; }
}
body.pg-site-f #why-italy { padding: 100px 60px; display: flex; align-items: center; gap: 60px; flex-direction: row-reverse; }
body.pg-site-f .why-italy-text { width: 60%; position: relative; z-index: 2; }
body.pg-site-f .why-italy-image { width: 40%; overflow: hidden; }
body.pg-site-f .why-italy-image img { width: 100%; height: auto; display: block; }
body.pg-site-f .why-italy-heading { font-size: 2.2rem; font-family: 'Cinzel', serif; font-weight: 700; margin-bottom: 1.5rem; color: #0B1929; }
@media (max-width: 900px) {
  body.pg-site-f #why-italy { flex-direction: column; padding: 60px 30px; gap: 30px; }
  body.pg-site-f .why-italy-text { width: 100%; }
  body.pg-site-f .why-italy-image { width: 100%; }
}
body.pg-site-f #services { padding: 100px 60px; position: relative; }
body.pg-site-f .services-heading { font-size: 2.5rem; font-family: 'Cinzel', serif; font-weight: 700; margin-bottom: 3rem; color: #0B1929; }
body.pg-site-f .services-container { max-width: 900px; }
body.pg-site-f .service-item { display: flex; gap: 30px; margin-bottom: 2.5rem; padding-bottom: 2.5rem; border-bottom: 1px solid #E0D5C8; position: relative; }
body.pg-site-f .service-item:last-child { border-bottom: none; }
body.pg-site-f .service-number { font-family: 'Cinzel', serif; font-size: 2.5rem; font-weight: 700; color: #C8A064; min-width: 80px; flex-shrink: 0; }
body.pg-site-f .service-content h3 { font-size: 1.5rem; margin-bottom: 0.8rem; color: #0B1929; }
body.pg-site-f .service-content p { color: #555; line-height: 1.8; font-size: 0.95rem; }
@media (max-width: 900px) {
  body.pg-site-f #services { padding: 60px 30px; }
  body.pg-site-f .services-heading { font-size: 1.8rem; }
  body.pg-site-f .service-item { gap: 20px; }
}
body.pg-site-f #partners { padding: 100px 60px; position: relative; }
body.pg-site-f .partners-heading { font-size: 2.5rem; font-family: 'Cinzel', serif; font-weight: 700; margin-bottom: 3rem; color: #0B1929; }
body.pg-site-f .partners-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
body.pg-site-f .partner-category h3 { font-size: 1.3rem; font-family: 'Cinzel', serif; font-weight: 700; margin-bottom: 1.5rem; color: #0B1929; border-bottom: 2px solid #C8A064; padding-bottom: 0.8rem; }
body.pg-site-f .partner-list { list-style: none; }
body.pg-site-f .partner-list li { margin-bottom: 1.2rem; }
body.pg-site-f .partner-list a { color: #0B1929; text-decoration: none; font-size: 0.95rem; transition: color 0.3s ease; position: relative; padding: 8px 0; }
body.pg-site-f .partner-list a:hover { color: #C8A064; }
@media (max-width: 900px) {
  body.pg-site-f #partners { padding: 60px 30px; }
  body.pg-site-f .partners-heading { font-size: 1.8rem; }
  body.pg-site-f .partners-grid { grid-template-columns: 1fr; gap: 40px; }
}
body.pg-site-f #showroom { padding: 100px 60px; position: relative; }
body.pg-site-f .showroom-heading { font-size: 2.5rem; font-family: 'Cinzel', serif; font-weight: 700; margin-bottom: 2rem; color: #0B1929; }
body.pg-site-f .showroom-address { font-size: 1rem; color: #666; margin-bottom: 3rem; font-weight: 500; }
body.pg-site-f .showroom-strip { overflow-x: auto; scroll-snap-type: x mandatory; display: flex; gap: 20px; padding-bottom: 20px; margin-bottom: 2rem; }
body.pg-site-f .showroom-strip::-webkit-scrollbar { height: 8px; }
body.pg-site-f .showroom-strip::-webkit-scrollbar-track { background: #E0D5C8; }
body.pg-site-f .showroom-strip::-webkit-scrollbar-thumb { background: #C8A064; border-radius: 4px; }
body.pg-site-f .showroom-image { flex: 0 0 400px; height: 300px; overflow: hidden; scroll-snap-align: start; background-color: #F5F0EB; }
body.pg-site-f .showroom-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 900px) {
  body.pg-site-f #showroom { padding: 60px 30px; }
  body.pg-site-f .showroom-heading { font-size: 1.8rem; }
  body.pg-site-f .showroom-image { flex: 0 0 280px; height: 220px; }
}
body.pg-site-f #contact { padding: 100px 60px; position: relative; }
body.pg-site-f .contact-heading { font-size: 2.5rem; font-family: 'Cinzel', serif; font-weight: 700; margin-bottom: 3rem; color: #0B1929; }
body.pg-site-f .contact-container { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
body.pg-site-f .contact-form { display: flex; flex-direction: column; }
body.pg-site-f .form-group { margin-bottom: 1.5rem; }
body.pg-site-f .form-group label { display: block; font-weight: 600; margin-bottom: 0.5rem; color: #0B1929; font-size: 0.9rem; }
body.pg-site-f .form-group input,
body.pg-site-f .form-group textarea { width: 100%; padding: 12px 15px; border: 1px solid #E0D5C8; background-color: #FDFBF7; font-family: 'Raleway', sans-serif; color: #0B1929; transition: border-color 0.3s ease; font-size: 0.95rem; }
body.pg-site-f .form-group input:focus,
body.pg-site-f .form-group textarea:focus { outline: none; border-color: #C8A064; }
body.pg-site-f .form-group textarea { resize: vertical; min-height: 120px; }
body.pg-site-f .form-submit { background-color: #0B1929; color: #FDFBF7; padding: 15px 30px; border: none; font-weight: 600; cursor: pointer; transition: background-color 0.3s ease; font-size: 0.95rem; align-self: flex-start; }
body.pg-site-f .form-submit:hover { background-color: #C8A064; color: #0B1929; }
body.pg-site-f .contact-info { display: flex; flex-direction: column; gap: 2rem; }
body.pg-site-f .contact-info-block { display: flex; flex-direction: column; }
body.pg-site-f .contact-info-label { font-weight: 700; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1px; color: #999; margin-bottom: 0.5rem; }
body.pg-site-f .contact-info-value { font-size: 1.1rem; color: #0B1929; text-decoration: none; transition: color 0.3s ease; }
body.pg-site-f .contact-info-value:hover { color: #C8A064; }
body.pg-site-f .contact-map-placeholder { background-color: #F5F0EB; border: 1px solid #E0D5C8; height: 300px; display: flex; align-items: center; justify-content: center; color: #999; font-size: 0.9rem; }
@media (max-width: 900px) {
  body.pg-site-f #contact { padding: 60px 30px; }
  body.pg-site-f .contact-heading { font-size: 1.8rem; }
  body.pg-site-f .contact-container { grid-template-columns: 1fr; gap: 40px; }
}
body.pg-site-f footer { background-color: #FDFBF7; padding: 40px 60px; border-top: 1px solid #E0D5C8; text-align: center; margin-left: 60px; }
body.pg-site-f .footer-logo { width: 100px; height: auto; margin-bottom: 20px; }
body.pg-site-f .footer-content { display: flex; flex-direction: column; align-items: center; gap: 15px; }
body.pg-site-f .footer-copyright { font-size: 0.85rem; color: #999; }
@media (max-width: 900px) {
  body.pg-site-f footer { margin-left: 0; padding: 40px 30px; }
  body.pg-site-f .footer-logo { width: 80px; }
}
body.pg-site-f .fade-in { opacity: 0; animation: f-fadeIn 0.8s ease-out forwards; }
body.pg-site-f .slide-in-left { opacity: 0; transform: translateX(-50px); animation: f-slideInLeft 0.8s ease-out forwards; }
body.pg-site-f .slide-in-right { opacity: 0; transform: translateX(50px); animation: f-slideInRight 0.8s ease-out forwards; }
@keyframes f-fadeIn {
            to {
                opacity: 1;
            }
        }
@keyframes f-slideInLeft {
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }
@keyframes f-slideInRight {
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }
body.pg-site-f .container { max-width: 1200px; margin: 0 auto; }
@media (max-height: 500px) {
  body.pg-site-f #hero { height: auto; min-height: 70vh; }
  body.pg-site-f .hero-image { height: 50vh; }
}

/* ---------- OPTION G - Italian Editorial Magazine ---------- */

body.pg-site-g { --color-white: #FFFEF9; --color-olive: #2C3527; --color-copper: #9B6B47; --color-slate: #6B6B6B; --color-light-bg: #F9F7F3; --color-tint-warm: #FBF8F1; --font-display: 'Playfair Display', serif; --font-body: 'DM Sans', sans-serif; --transition-smooth: all 0.3s ease; }
body.pg-site-g { font-family: var(--font-body); color: var(--color-slate); background-color: var(--color-white); line-height: 1.6; overflow-x: hidden; }
body.pg-site-g h1 { font-family: var(--font-display); font-size: clamp(2.5rem, 8vw, 5rem); font-weight: 600; color: var(--color-olive); line-height: 1.1; letter-spacing: 0.05em; }
body.pg-site-g h2 { font-family: var(--font-display); font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 600; color: var(--color-olive); margin-bottom: 1.5rem; letter-spacing: 0.03em; }
body.pg-site-g h3 { font-family: var(--font-display); font-size: 1.5rem; font-weight: 600; color: var(--color-olive); margin-bottom: 1rem; }
body.pg-site-g p { font-size: 1rem; line-height: 1.8; margin-bottom: 1.5rem; color: var(--color-slate); }
body.pg-site-g a { color: var(--color-copper); text-decoration: none; transition: var(--transition-smooth); }
body.pg-site-g a:hover { opacity: 0.7; }
body.pg-site-g button { font-family: var(--font-body); border: none; cursor: pointer; transition: var(--transition-smooth); }
body.pg-site-g nav { position: fixed; top: 0; left: 0; right: 0; height: 80px; display: flex; justify-content: space-between; align-items: center; padding: 0 3rem; z-index: 1000; background-color: transparent; transition: var(--transition-smooth); }
body.pg-site-g nav.scrolled { background-color: var(--color-white); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); }
body.pg-site-g .logo { height: 50px; display: flex; align-items: center; }
body.pg-site-g .logo img { height: 100%; width: auto; }
body.pg-site-g nav.scrolled .logo img { filter: none; }
body.pg-site-g nav:not(.scrolled) .logo img { filter: brightness(0) invert(1); }
body.pg-site-g .nav-links { display: flex; gap: 2.5rem; list-style: none; align-items: center; }
body.pg-site-g .nav-links a { font-size: 0.9rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.08em; color: var(--color-white); transition: var(--transition-smooth); }
body.pg-site-g nav.scrolled .nav-links a { color: var(--color-olive); }
body.pg-site-g .nav-links a:hover { color: var(--color-copper); opacity: 1; }
body.pg-site-g .hamburger { display: none; flex-direction: column; cursor: pointer; gap: 5px; width: 44px; height: 44px; justify-content: center; align-items: center; }
body.pg-site-g .hamburger span { width: 24px; height: 2px; background-color: var(--color-white); border-radius: 2px; transition: var(--transition-smooth); }
body.pg-site-g nav.scrolled .hamburger span { background-color: var(--color-olive); }
body.pg-site-g .hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(8px, 8px); }
body.pg-site-g .hamburger.active span:nth-child(2) { opacity: 0; }
body.pg-site-g .hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(7px, -7px); }
body.pg-site-g .nav-mobile { display: none; }
body.pg-site-g #hero { position: relative; height: 100vh; min-height: 600px; background: linear-gradient(135deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.25) 100%), url('/img/03-24-2026-lana-royale-0028-1920.webp'); background-size: cover; background-position: center; background-attachment: fixed; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: var(--color-white); overflow: hidden; scroll-margin-top: 80px; }
body.pg-site-g .hero-logo { height: 160px; margin-bottom: 2rem; display: flex; align-items: center; justify-content: center; animation: g-fadeInDown 0.8s ease-out; }
body.pg-site-g .hero-logo img { height: 100%; width: auto; filter: brightness(0) invert(1); }
body.pg-site-g .hero-content { max-width: 900px; padding: 0 2rem; z-index: 2; }
body.pg-site-g .hero-title { font-size: clamp(3rem, 12vw, 6rem); font-weight: 600; letter-spacing: 0.08em; margin-bottom: 1rem; animation: g-slideUp 0.9s ease-out; animation-fill-mode: both; }
body.pg-site-g .hero-title span:nth-child(1) { animation-delay: 0.1s; }
body.pg-site-g .hero-title span:nth-child(2) { animation-delay: 0.2s; }
body.pg-site-g .hero-subtitle { font-size: 1.1rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 1.5rem; animation: g-slideUp 0.9s ease-out 0.3s both; }
body.pg-site-g .hero-tagline { font-size: 1rem; font-weight: 400; letter-spacing: 0.04em; margin-bottom: 2.5rem; animation: g-slideUp 0.9s ease-out 0.4s both; }
body.pg-site-g .cta-button { display: inline-block; padding: 14px 32px; background-color: var(--color-copper); color: var(--color-white); font-size: 0.9rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; border-radius: 2px; min-height: 48px; display: inline-flex; align-items: center; animation: g-slideUp 0.9s ease-out 0.5s both; }
body.pg-site-g .cta-button:hover { background-color: #8B5A3C; transform: translateY(-3px); opacity: 1; }
@keyframes g-fadeIn {
            from {
                opacity: 0;
                transform: translateY(40px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
@keyframes g-fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
@keyframes g-slideUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
body.pg-site-g section { opacity: 0; animation: g-fadeIn 0.8s ease-out forwards; }
body.pg-site-g section.in-view { animation-play-state: running; }
body.pg-site-g .container { max-width: 1200px; margin: 0 auto; padding: 0 2rem; }
body.pg-site-g section { padding: 6rem 0; }
body.pg-site-g #about { position: relative; background-color: var(--color-white); scroll-margin-top: 80px; }
body.pg-site-g .about-content { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; position: relative; }
body.pg-site-g .about-image { position: relative; height: 500px; overflow: hidden; border-radius: 2px; }
body.pg-site-g .about-image img { width: 100%; height: 100%; object-fit: cover; }
body.pg-site-g .about-text { padding-right: 2rem; }
body.pg-site-g .about-text h2 { margin-bottom: 2rem; }
body.pg-site-g .about-text p { font-size: 1rem; line-height: 1.9; }
body.pg-site-g .pull-quote { font-family: var(--font-display); font-size: clamp(1.5rem, 4vw, 2.5rem); font-style: italic; color: var(--color-olive); line-height: 1.4; margin: 3rem 0; padding: 2rem 0; border-top: 2px solid var(--color-copper); border-bottom: 2px solid var(--color-copper); text-align: center; font-weight: 400; }
body.pg-site-g #why-italy { background-color: var(--color-tint-warm); scroll-margin-top: 80px; }
body.pg-site-g .why-italy-header { text-align: center; margin-bottom: 3rem; }
body.pg-site-g .section-subtitle { font-size: 1rem; color: var(--color-copper); text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 0.5rem; font-weight: 600; }
body.pg-site-g .why-italy-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
body.pg-site-g .italy-point { background-color: var(--color-white); padding: 2.5rem; border-radius: 2px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); transition: var(--transition-smooth); }
body.pg-site-g .italy-point:hover { transform: translateY(-8px); box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1); }
body.pg-site-g .italy-point h3 { color: var(--color-copper); margin-bottom: 1rem; }
body.pg-site-g #services { background-color: var(--color-white); scroll-margin-top: 80px; }
body.pg-site-g .services-header { text-align: center; margin-bottom: 3rem; }
body.pg-site-g .services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
body.pg-site-g .service-card { background-color: var(--color-white); border-top: 4px solid var(--color-copper); padding: 2.5rem; border-radius: 2px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); transition: var(--transition-smooth); text-align: center; }
body.pg-site-g .service-card:hover { transform: translateY(-8px); box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12); }
body.pg-site-g .service-card h3 { color: var(--color-olive); margin-bottom: 1.5rem; font-size: 1.4rem; }
body.pg-site-g #partners { background-color: var(--color-tint-warm); scroll-margin-top: 80px; }
body.pg-site-g .partners-header { text-align: center; margin-bottom: 3rem; }
body.pg-site-g .partners-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
body.pg-site-g .partners-column h3 { color: var(--color-copper); margin-bottom: 2rem; font-size: 1.3rem; }
body.pg-site-g .partners-list { list-style: none; }
body.pg-site-g .partners-list li { margin-bottom: 1.5rem; padding-left: 1.5rem; position: relative; font-size: 0.95rem; }
body.pg-site-g .partners-list li:before { content: ''; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; background-color: var(--color-copper); border-radius: 50%; }
body.pg-site-g .partners-list a { color: var(--color-slate); font-weight: 500; border-bottom: 1px solid transparent; transition: var(--transition-smooth); }
body.pg-site-g .partners-list a:hover { border-bottom-color: var(--color-copper); color: var(--color-copper); }
body.pg-site-g #showroom { background-color: var(--color-white); scroll-margin-top: 80px; }
body.pg-site-g .showroom-header { text-align: center; margin-bottom: 2rem; }
body.pg-site-g .showroom-info { text-align: center; margin-bottom: 3rem; font-size: 0.95rem; color: var(--color-slate); line-height: 1.8; }
body.pg-site-g .showroom-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
body.pg-site-g .showroom-image { position: relative; height: 320px; overflow: hidden; border-radius: 2px; }
body.pg-site-g .showroom-image img { width: 100%; height: 100%; object-fit: cover; transition: var(--transition-smooth); }
body.pg-site-g .showroom-image:hover img { transform: scale(1.05); }
body.pg-site-g #contact { background-color: var(--color-tint-warm); scroll-margin-top: 80px; }
body.pg-site-g .contact-header { text-align: center; margin-bottom: 3rem; }
body.pg-site-g .contact-content { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
body.pg-site-g .contact-info { background-color: var(--color-white); padding: 2.5rem; border-radius: 2px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); }
body.pg-site-g .contact-info h3 { color: var(--color-copper); margin-bottom: 2rem; }
body.pg-site-g .contact-item { margin-bottom: 2rem; }
body.pg-site-g .contact-item-label { font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--color-olive); font-weight: 600; margin-bottom: 0.5rem; }
body.pg-site-g .contact-item-value { font-size: 1rem; color: var(--color-slate); }
body.pg-site-g .contact-item a { color: var(--color-copper); font-weight: 500; }
body.pg-site-g .contact-form { background-color: var(--color-white); padding: 2.5rem; border-radius: 2px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); }
body.pg-site-g .form-group { margin-bottom: 1.5rem; }
body.pg-site-g .form-group label { display: block; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--color-olive); font-weight: 600; margin-bottom: 0.5rem; }
body.pg-site-g .form-group input,
body.pg-site-g .form-group textarea { width: 100%; padding: 12px; border: 1px solid #DDD; border-radius: 2px; font-family: var(--font-body); font-size: 1rem; color: var(--color-slate); transition: var(--transition-smooth); }
body.pg-site-g .form-group input:focus,
body.pg-site-g .form-group textarea:focus { outline: none; border-color: var(--color-copper); box-shadow: 0 0 0 3px rgba(155, 107, 71, 0.1); }
body.pg-site-g .form-group textarea { resize: vertical; min-height: 140px; }
body.pg-site-g .form-submit { width: 100%; padding: 14px; background-color: var(--color-copper); color: var(--color-white); font-size: 0.9rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; border-radius: 2px; min-height: 48px; cursor: pointer; transition: var(--transition-smooth); }
body.pg-site-g .form-submit:hover { background-color: #8B5A3C; transform: translateY(-2px); }
body.pg-site-g footer { background-color: var(--color-olive); color: var(--color-white); padding: 3rem 2rem; text-align: center; }
body.pg-site-g footer .logo { height: 40px; margin-bottom: 1.5rem; justify-content: center; }
body.pg-site-g footer .logo img { height: 100%; filter: brightness(0) invert(1); }
body.pg-site-g .footer-copyright { font-size: 0.85rem; color: rgba(255, 255, 255, 0.7); }
@media (max-width: 900px) {
  body.pg-site-g nav { padding: 0 1.5rem; }
  body.pg-site-g .hamburger { display: flex; }
  body.pg-site-g .nav-links { display: none; }
  body.pg-site-g .nav-mobile { display: none; position: absolute; top: 80px; left: 0; right: 0; background-color: var(--color-olive); flex-direction: column; gap: 0; list-style: none; border-top: 1px solid rgba(255, 255, 255, 0.1); }
  body.pg-site-g nav.scrolled .nav-mobile { background-color: var(--color-white); }
  body.pg-site-g .nav-mobile.active { display: flex; }
  body.pg-site-g .nav-mobile a { display: block; padding: 1rem 1.5rem; color: var(--color-white); text-decoration: none; font-size: 0.9rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.08em; border-bottom: 1px solid rgba(255, 255, 255, 0.1); transition: var(--transition-smooth); }
  body.pg-site-g nav.scrolled .nav-mobile a { color: var(--color-olive); border-bottom-color: rgba(0, 0, 0, 0.05); }
  body.pg-site-g .nav-mobile a:hover { background-color: rgba(155, 107, 71, 0.1); color: var(--color-copper); }
  body.pg-site-g .about-content { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-g .about-image { height: 400px; }
  body.pg-site-g .about-text { padding-right: 0; }
  body.pg-site-g .why-italy-grid { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-g .services-grid { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-g .partners-grid { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-g .showroom-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
  body.pg-site-g .contact-content { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-g section { padding: 4rem 0; }
  body.pg-site-g h1 { font-size: clamp(2rem, 6vw, 3rem); }
  body.pg-site-g h2 { font-size: clamp(1.5rem, 4vw, 2.5rem); }
}
@media (max-width: 480px) {
  body.pg-site-g nav { height: 70px; padding: 0 1rem; }
  body.pg-site-g .logo { height: 40px; }
  body.pg-site-g .hero-logo { height: 100px; margin-bottom: 1.5rem; }
  body.pg-site-g .hero-title { font-size: 2rem; letter-spacing: 0.06em; }
  body.pg-site-g .hero-subtitle { font-size: 0.85rem; }
  body.pg-site-g .showroom-grid { grid-template-columns: 1fr; }
  body.pg-site-g .pull-quote { font-size: 1.3rem; padding: 1.5rem 0; margin: 2rem 0; }
  body.pg-site-g .cta-button { padding: 12px 24px; font-size: 0.85rem; }
  body.pg-site-g section { padding: 3rem 1rem; }
  body.pg-site-g .container { padding: 0 1rem; }
  body.pg-site-g p { font-size: 0.95rem; }
}
@media (max-height: 500px) {
  body.pg-site-g #hero { min-height: 100vh; height: auto; padding: 80px 0 40px; }
  body.pg-site-g .hero-content { padding: 2rem 1rem; }
  body.pg-site-g .hero-logo { height: 80px; margin-bottom: 1rem; }
  body.pg-site-g .hero-title { font-size: 2.5rem; margin-bottom: 0.5rem; }
  body.pg-site-g .hero-subtitle { font-size: 0.9rem; margin-bottom: 1rem; }
  body.pg-site-g .cta-button { font-size: 0.8rem; padding: 10px 20px; }
}

/* ---------- OPTION H - Art Deco Geometric ---------- */

body.pg-site-h { --color-ivory: #FAF6EF; --color-green: #1A3328; --color-gold: #B89B5E; --color-charcoal: #3A3A38; --color-green-light: rgba(26, 51, 40, 0.03); --font-heading: 'Josefin Sans', sans-serif; --font-accent: 'Libre Caslon Display', serif; --font-body: 'Source Sans 3', sans-serif; }
body.pg-site-h { font-family: var(--font-body); color: var(--color-charcoal); background-color: var(--color-ivory); line-height: 1.6; overflow-x: hidden; }
body.pg-site-h nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; display: flex; justify-content: space-between; align-items: center; padding: 1.5rem 3rem; background: transparent; transition: all 0.4s ease; }
body.pg-site-h nav.scrolled { background: var(--color-ivory); border-bottom: 1px solid var(--color-gold); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); }
body.pg-site-h nav.scrolled .logo img { filter: none; }
body.pg-site-h nav.scrolled .nav-links a { color: var(--color-green); }
body.pg-site-h nav.scrolled .nav-links a:hover { color: var(--color-gold); }
body.pg-site-h .logo img { height: 80px; width: auto; filter: brightness(0) invert(1); transition: filter 0.4s ease; }
body.pg-site-h .nav-links { display: flex; gap: 3rem; align-items: center; list-style: none; }
body.pg-site-h .nav-links a { font-family: var(--font-heading); font-size: 0.85rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: white; text-decoration: none; transition: color 0.3s ease; position: relative; }
body.pg-site-h .nav-links a::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 1px; background: var(--color-gold); transition: width 0.3s ease; }
body.pg-site-h .nav-links a:hover::after { width: 100%; }
body.pg-site-h .hamburger { display: none; flex-direction: column; cursor: pointer; gap: 5px; }
body.pg-site-h .hamburger span { width: 25px; height: 2px; background: white; border-radius: 2px; transition: all 0.3s ease; }
body.pg-site-h nav.scrolled .hamburger span { background: var(--color-green); }
body.pg-site-h .nav-dropdown { display: none; position: absolute; top: 100%; right: 0; background: var(--color-ivory); flex-direction: column; padding: 2rem 1.5rem; gap: 1.5rem; min-width: 200px; border-left: 1px solid var(--color-gold); margin-top: 0.5rem; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
body.pg-site-h .nav-dropdown a { font-family: var(--font-heading); font-size: 0.85rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: var(--color-green); text-decoration: none; transition: color 0.3s ease; }
body.pg-site-h .nav-dropdown a:hover { color: var(--color-gold); }
body.pg-site-h .nav-dropdown.active { display: flex; }
body.pg-site-h #hero { position: relative; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 5rem 2rem; background: linear-gradient(rgba(26, 51, 40, 0.7), rgba(26, 51, 40, 0.7)), url('/img/03-24-2026-lana-royale-0022-1920.webp') center/cover; background-attachment: fixed; text-align: center; color: white; overflow: hidden; }
body.pg-site-h #hero::before { content: ''; position: absolute; top: 3rem; left: 3rem; width: 60px; height: 60px; border-top: 2px solid var(--color-gold); border-left: 2px solid var(--color-gold); pointer-events: none; animation: h-fadeInScale 1.2s ease-out 0.3s backwards; }
body.pg-site-h #hero::after { content: ''; position: absolute; bottom: 3rem; right: 3rem; width: 60px; height: 60px; border-bottom: 2px solid var(--color-gold); border-right: 2px solid var(--color-gold); pointer-events: none; animation: h-fadeInScale 1.2s ease-out 0.5s backwards; }
body.pg-site-h .hero-content { z-index: 10; animation: h-fadeInUp 1s ease-out; }
body.pg-site-h .hero-logo { height: 150px; width: auto; margin-bottom: 3rem; animation: h-fadeInScale 1s ease-out 0.2s backwards; }
body.pg-site-h .hero-title { font-family: var(--font-heading); font-size: clamp(2.5rem, 8vw, 5rem); font-weight: 700; letter-spacing: 0.3em; text-transform: uppercase; margin-bottom: 0.5rem; animation: h-fadeInScale 1s ease-out 0.4s backwards; }
body.pg-site-h .hero-subtitle { font-family: var(--font-accent); font-size: clamp(1.2rem, 4vw, 1.8rem); font-style: italic; margin-bottom: 1.5rem; letter-spacing: 0.05em; animation: h-fadeInUp 1s ease-out 0.6s backwards; }
body.pg-site-h .hero-tagline { font-size: 1rem; max-width: 500px; margin: 0 auto 3rem; line-height: 1.8; opacity: 0.95; animation: h-fadeInUp 1s ease-out 0.8s backwards; }
body.pg-site-h .hero-cta { display: inline-block; padding: 1rem 3rem; border: 2px solid var(--color-gold); background: transparent; color: var(--color-gold); font-family: var(--font-heading); font-size: 0.9rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; cursor: pointer; transition: all 0.4s ease; text-decoration: none; min-height: 48px; animation: h-fadeInUp 1s ease-out 1s backwards; }
body.pg-site-h .hero-cta:hover { background: var(--color-gold); color: var(--color-green); box-shadow: 0 8px 24px rgba(184, 155, 94, 0.3); }
body.pg-site-h .hero-diamond { margin-top: 3rem; font-size: 2rem; color: var(--color-gold); animation: h-fadeInUp 1s ease-out 1.2s backwards; }
@keyframes h-fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
@keyframes h-fadeInScale {
            from {
                opacity: 0;
                transform: scale(0.9);
            }
            to {
                opacity: 1;
                transform: scale(1);
            }
        }
body.pg-site-h .section-divider { display: flex; align-items: center; justify-content: center; padding: 3rem 0; position: relative; }
body.pg-site-h .section-divider::before,
body.pg-site-h .section-divider::after { content: ''; flex: 1; height: 1px; background: var(--color-gold); max-width: 200px; transition: width 0.8s ease; width: 0; }
body.pg-site-h .section-divider.visible::before,
body.pg-site-h .section-divider.visible::after { width: 100%; }
body.pg-site-h .section-divider span { font-size: 1.5rem; color: var(--color-gold); margin: 0 2rem; line-height: 1; }
body.pg-site-h section { padding: 6rem 2rem; scroll-margin-top: 80px; }
body.pg-site-h section:nth-child(odd) { background: var(--color-ivory); }
body.pg-site-h section:nth-child(even) { background: var(--color-green-light); }
body.pg-site-h h2 { font-family: var(--font-heading); font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; color: var(--color-green); text-align: center; margin-bottom: 3rem; }
body.pg-site-h #about { padding: 6rem 2rem; }
body.pg-site-h .about-container { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
body.pg-site-h .about-text p { font-size: 1rem; line-height: 1.8; margin-bottom: 1.5rem; color: var(--color-charcoal); }
body.pg-site-h .about-quote { font-family: var(--font-accent); font-size: 1.25rem; font-style: italic; color: var(--color-green); padding: 2rem 0 2rem 2rem; border-left: 3px solid var(--color-gold); margin: 2rem 0; line-height: 1.8; }
body.pg-site-h .about-image-wrapper { position: relative; overflow: hidden; }
body.pg-site-h .about-image { width: 100%; height: auto; display: block; border: 1px solid var(--color-gold); box-shadow: inset 0 0 0 8px var(--color-ivory); transition: transform 0.6s ease; }
body.pg-site-h .about-image-wrapper:hover .about-image { transform: scale(1.02); }
body.pg-site-h #why-italy { background: var(--color-green-light); }
body.pg-site-h .italy-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 3rem; }
body.pg-site-h .italy-card { padding: 2.5rem; border: 1px solid var(--color-gold); background: var(--color-ivory); transition: all 0.4s ease; position: relative; overflow: hidden; }
body.pg-site-h .italy-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(circle at center, rgba(184, 155, 94, 0.05), transparent); opacity: 0; transition: opacity 0.4s ease; pointer-events: none; }
body.pg-site-h .italy-card:hover::before { opacity: 1; }
body.pg-site-h .italy-card:hover { border-color: var(--color-gold); box-shadow: 0 0 20px rgba(184, 155, 94, 0.2); transform: translateY(-2px); }
body.pg-site-h .italy-card h3 { font-family: var(--font-heading); font-size: 1.3rem; font-weight: 700; letter-spacing: 0.1em; color: var(--color-green); margin-bottom: 1rem; text-transform: uppercase; }
body.pg-site-h .italy-card p { font-size: 0.95rem; line-height: 1.7; color: var(--color-charcoal); }
body.pg-site-h #services { background: var(--color-ivory); }
body.pg-site-h .services-container { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; }
body.pg-site-h .service-card { padding: 3rem 2rem; text-align: center; position: relative; transition: all 0.4s ease; background: var(--color-ivory); border: 1px solid transparent; }
body.pg-site-h .service-card::before { content: '◆'; display: block; font-size: 1.5rem; color: var(--color-gold); margin-bottom: 1.5rem; animation: h-fadeIn 0.8s ease; }
body.pg-site-h .service-card:hover { border: 1px solid var(--color-gold); box-shadow: 0 8px 20px rgba(184, 155, 94, 0.15); transform: translateY(-4px); background: rgba(184, 155, 94, 0.03); }
body.pg-site-h .service-card h3 { font-family: var(--font-heading); font-size: 1.4rem; font-weight: 700; letter-spacing: 0.1em; color: var(--color-green); margin-bottom: 1.5rem; text-transform: uppercase; }
body.pg-site-h .service-card p { font-size: 0.95rem; line-height: 1.7; color: var(--color-charcoal); }
@keyframes h-fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }
body.pg-site-h #partners { background: var(--color-green-light); }
body.pg-site-h .partners-container { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; }
body.pg-site-h .partners-column h3 { font-family: var(--font-heading); font-size: 1.5rem; font-weight: 700; letter-spacing: 0.1em; color: var(--color-green); margin-bottom: 2rem; text-transform: uppercase; text-align: center; padding-bottom: 1.5rem; border-bottom: 1px solid var(--color-gold); }
body.pg-site-h .partners-list { display: flex; flex-direction: column; gap: 1.5rem; }
body.pg-site-h .partners-list a { color: var(--color-gold); text-decoration: none; font-size: 1rem; transition: all 0.3s ease; font-weight: 500; position: relative; display: inline-block; }
body.pg-site-h .partners-list a::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background: var(--color-gold); transition: width 0.3s ease; }
body.pg-site-h .partners-list a:hover { text-decoration: underline; }
body.pg-site-h #showroom { background: var(--color-ivory); }
body.pg-site-h .showroom-intro { text-align: center; margin-bottom: 3rem; max-width: 600px; margin-left: auto; margin-right: auto; }
body.pg-site-h .showroom-intro p { font-size: 1.1rem; line-height: 1.8; color: var(--color-charcoal); margin-bottom: 1rem; }
body.pg-site-h .showroom-address { font-family: var(--font-heading); font-size: 1rem; letter-spacing: 0.1em; color: var(--color-green); font-weight: 600; }
body.pg-site-h .gallery { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
body.pg-site-h .gallery-item { position: relative; overflow: hidden; aspect-ratio: 1; border: 1px solid var(--color-gold); background: #f5f5f5; }
body.pg-site-h .gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
body.pg-site-h .gallery-item:hover img { transform: scale(1.08); }
body.pg-site-h #contact { background: var(--color-green-light); }
body.pg-site-h .contact-container { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; }
body.pg-site-h .contact-info { padding: 3rem; border: 1px solid var(--color-gold); background: var(--color-ivory); }
body.pg-site-h .contact-info h3 { font-family: var(--font-heading); font-size: 1.3rem; font-weight: 700; letter-spacing: 0.1em; color: var(--color-green); margin-bottom: 2rem; text-transform: uppercase; }
body.pg-site-h .contact-item { margin-bottom: 2rem; }
body.pg-site-h .contact-item label { font-family: var(--font-heading); font-size: 0.9rem; font-weight: 700; letter-spacing: 0.1em; color: var(--color-green); text-transform: uppercase; display: block; margin-bottom: 0.5rem; }
body.pg-site-h .contact-item p { font-size: 1rem; line-height: 1.6; color: var(--color-charcoal); }
body.pg-site-h .contact-item a { color: var(--color-gold); text-decoration: none; transition: color 0.3s ease; }
body.pg-site-h .contact-item a:hover { text-decoration: underline; }
body.pg-site-h .contact-form { display: flex; flex-direction: column; gap: 1.5rem; }
body.pg-site-h .form-group { display: flex; flex-direction: column; }
body.pg-site-h .form-group label { font-family: var(--font-heading); font-size: 0.9rem; font-weight: 600; letter-spacing: 0.1em; color: var(--color-green); text-transform: uppercase; margin-bottom: 0.5rem; }
body.pg-site-h .form-group input,
body.pg-site-h .form-group textarea { padding: 0.75rem; border: 1px solid var(--color-gold); background: var(--color-ivory); font-family: var(--font-body); font-size: 0.95rem; color: var(--color-charcoal); transition: border-color 0.3s ease; }
body.pg-site-h .form-group input::placeholder,
body.pg-site-h .form-group textarea::placeholder { color: var(--color-charcoal); opacity: 0.6; }
body.pg-site-h .form-group input:focus,
body.pg-site-h .form-group textarea:focus { outline: none; border-color: var(--color-gold); box-shadow: 0 0 8px rgba(184, 155, 94, 0.2); }
body.pg-site-h .form-group textarea { resize: vertical; min-height: 150px; }
body.pg-site-h .submit-btn { padding: 1rem 2rem; background: var(--color-gold); color: var(--color-green); border: 2px solid var(--color-gold); font-family: var(--font-heading); font-size: 0.9rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; cursor: pointer; transition: all 0.4s ease; min-height: 48px; }
body.pg-site-h .submit-btn:hover { background: var(--color-green); color: var(--color-gold); box-shadow: 0 4px 12px rgba(26, 51, 40, 0.2); }
body.pg-site-h footer { background: var(--color-green); color: white; padding: 4rem 2rem; text-align: center; }
body.pg-site-h footer .logo img { height: 60px; width: auto; margin-bottom: 2rem; filter: none; }
body.pg-site-h .footer-divider { display: flex; align-items: center; justify-content: center; margin: 2rem 0; position: relative; }
body.pg-site-h .footer-divider::before,
body.pg-site-h .footer-divider::after { content: ''; flex: 1; height: 1px; background: var(--color-gold); max-width: 150px; }
body.pg-site-h .footer-divider span { font-size: 1.5rem; color: var(--color-gold); margin: 0 1.5rem; }
body.pg-site-h .footer-copyright { font-size: 0.9rem; letter-spacing: 0.05em; }
@media (max-height: 500px) {
  body.pg-site-h #hero { min-height: auto; padding: 10rem 2rem 6rem; }
  body.pg-site-h #hero::before,
body.pg-site-h #hero::after { display: none; }
  body.pg-site-h .hero-logo { height: 80px; }
  body.pg-site-h .hero-title { font-size: 2rem; }
  body.pg-site-h .hero-subtitle { font-size: 1rem; }
}
@media (max-width: 900px) {
  body.pg-site-h nav { padding: 1rem 2rem; }
  body.pg-site-h .nav-links { display: none; }
  body.pg-site-h .hamburger { display: flex; position: relative; }
  body.pg-site-h .logo img { height: 60px; }
  body.pg-site-h .about-container,
body.pg-site-h .partners-container,
body.pg-site-h .contact-container { grid-template-columns: 1fr; gap: 2rem; }
  body.pg-site-h .italy-grid { grid-template-columns: 1fr; }
  body.pg-site-h .services-container { grid-template-columns: 1fr; }
  body.pg-site-h .gallery { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
  body.pg-site-h #hero::before,
body.pg-site-h #hero::after { width: 40px; height: 40px; }
  body.pg-site-h section { padding: 4rem 1.5rem; }
  body.pg-site-h h2 { font-size: 2rem; margin-bottom: 2rem; }
}
@media (max-width: 480px) {
  body.pg-site-h nav { padding: 0.75rem 1rem; }
  body.pg-site-h .logo img { height: 50px; }
  body.pg-site-h .hero-logo { height: 100px; margin-bottom: 2rem; }
  body.pg-site-h .hero-title { font-size: 1.8rem; letter-spacing: 0.2em; }
  body.pg-site-h .hero-subtitle { font-size: 1rem; }
  body.pg-site-h .hero-cta { padding: 0.75rem 2rem; font-size: 0.8rem; min-height: 44px; }
  body.pg-site-h .gallery { grid-template-columns: 1fr; }
  body.pg-site-h .section-divider::before,
body.pg-site-h .section-divider::after { max-width: 80px; }
  body.pg-site-h section { padding: 3rem 1rem; }
  body.pg-site-h h2 { font-size: 1.5rem; }
  body.pg-site-h .about-quote { font-size: 1.05rem; padding: 1.5rem 0 1.5rem 1.5rem; }
  body.pg-site-h .contact-info,
body.pg-site-h .italy-card { padding: 1.5rem; }
  body.pg-site-h .submit-btn,
body.pg-site-h .hero-cta { width: 100%; }
  body.pg-site-h .about-text p { font-size: 0.95rem; }
  body.pg-site-h #hero::before,
body.pg-site-h #hero::after { width: 30px; height: 30px; top: 1.5rem; right: 1.5rem; bottom: auto; left: auto; }
  body.pg-site-h #hero::after { top: auto; right: auto; bottom: 1.5rem; left: 1.5rem; }
}
