/* Alvera champagne: tailored surfaces, warm metal and editorial contrast. */
:root {
  --champagne: #BFA48F;
  --champagne-light: #DCC9B9;
  --champagne-paper: #F6EFE8;
  --champagne-ink: #2F2722;
  --champagne-muted: #42362D;
  --champagne-accent: #603B25;
  --champagne-line: rgba(96, 59, 37, .27);
  --atelier-porcelain: #F3ECE4;
  --atelier-stone: #DDCABB;
  --atelier-espresso: #382A21;
  --atelier-bronze: #A17A54;
  --atelier-hairline: rgba(105, 75, 48, .22);
  --atelier-shadow: 0 24px 64px rgba(76, 48, 28, .12);
  --paper: var(--champagne-paper);
  --paper-deep: #E4D3C4;
  --ink: var(--champagne-ink);
  --ink-deep: #3F3128;
  --muted: var(--champagne-muted);
  --gold: #80512F;
  --gold-light: var(--champagne-accent);
  --line: var(--champagne-line);
  --visitor-gold: var(--champagne-accent);
  --visitor-paper: var(--champagne-ink);
  --visitor-ink: var(--champagne-ink);
  color-scheme: light;
}
html, body { background: var(--champagne); }
body { color: var(--champagne-ink); }
::selection { background: #6B4D34; color: var(--champagne-paper); }
.body-copy, main p:not(.eyebrow):not(.hero-kicker), .hero-description,
.hero-secondary, .hero-visual-caption, .hero-scroll, .hero-meta,
.scene-caption > span, .scene-status, .collection-end,
.approach-step p, .footer-bottom, .store-hours, .catalog-count, .catalog-empty,
.gallery.has-products .card-details small, .visitor-request-copy > p:last-child,
.visitor-request-note, .visitor-questions-heading > p:last-child, .visitor-answer p {
  color: var(--champagne-muted);
}
.hero, .intro, .rates, .collection, .manifesto, .approach, .visit, .site-footer {
  color: var(--champagne-ink);
  border-color: var(--champagne-line);
}
.hero {
  background:
    radial-gradient(ellipse at 77% 36%, rgba(255, 249, 233, .68), transparent 52%),
    linear-gradient(118deg, #EDE1D6 0%, #BFA48F 57%, #C9B3A0 100%);
}
.hero::before {
  background: repeating-linear-gradient(128deg, transparent 0 4px, rgba(86, 59, 37, .018) 4px 5px);
  pointer-events: none;
}
.hero::after { background: linear-gradient(90deg, transparent, rgba(81, 56, 33, .38), transparent); }
.hero-glow {
  background:
    radial-gradient(ellipse at 73% 40%, rgba(255, 242, 211, .3), transparent 43%),
    radial-gradient(ellipse at 23% 75%, rgba(155, 108, 68, .12), transparent 42%);
}
.hero-title em, .hero-tagline em, .display-title em, .manifesto h2 em {
  color: #704329;
}
.hero-meta { border-top-color: var(--champagne-line); }
.hero-meta a { color: var(--champagne-ink); }
.hero-meta a span { color: var(--champagne-accent); }
.hero-link, .hero-link:hover {
  background: linear-gradient(135deg, #4A3729, #2E241E);
  border-color: #4A3729;
  color: var(--champagne-paper);
  box-shadow: inset 0 1px rgba(255, 235, 199, .14), 0 8px 22px rgba(65, 41, 24, .12);
}
.hero-link:hover {
  background: linear-gradient(135deg, #614630, #382A21);
  box-shadow: inset 0 1px rgba(255, 235, 199, .18), 0 12px 28px rgba(65, 41, 24, .2);
}
.hero-secondary { border-color: rgba(81, 56, 33, .5); }
.hero-secondary:hover, .text-link:hover, .visit-actions a:hover,
.header-nav a:hover, .header-nav a:focus-visible {
  color: var(--champagne-accent);
}
.sculpture-aura {
  inset: 5% -4%;
  background: radial-gradient(ellipse at 52% 49%,
    rgba(73, 52, 36, .54) 0%, rgba(123, 91, 64, .34) 23%,
    rgba(176, 142, 110, .16) 46%, transparent 70%);
}
.scene-caption i { background: #876033; box-shadow: 0 0 9px rgba(115, 78, 39, .3); }
.scene-motion { color: var(--champagne-ink); border-color: var(--champagne-line); }
.scene-motion:hover { color: var(--champagne-accent); }
.fallback-orbit { border-color: rgba(114, 78, 39, .4); box-shadow: 0 1px 9px rgba(114, 78, 39, .13); }
.sculpture-fallback img {
  filter: drop-shadow(4px 6px 0 #745421) drop-shadow(0 14px 26px rgba(75, 46, 26, .2));
}
.site-header {
  background: linear-gradient(180deg, rgba(238, 225, 212, .96), rgba(221, 202, 185, .7));
  border-bottom-color: rgba(101, 72, 44, .19);
  box-shadow: inset 0 1px rgba(255, 249, 239, .55);
}
.site-header.is-scrolled {
  background: rgba(232, 215, 200, .97);
  box-shadow: 0 8px 28px rgba(76, 48, 28, .07), inset 0 -1px rgba(101, 72, 44, .2);
}
.header-nav a, .header-location, .header-call { color: var(--champagne-ink); }
.header-call { border-color: rgba(81, 56, 33, .5); }
.header-call:hover { background: var(--champagne-ink); color: var(--champagne-paper); }
.menu-toggle {
  background: linear-gradient(145deg, #F6EEE4, #E4D1BF);
  color: var(--champagne-ink);
  border-color: rgba(111, 78, 48, .32);
  box-shadow: inset 0 1px rgba(255, 255, 255, .7), 0 8px 22px rgba(70, 44, 25, .12);
}
.menu-panel {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(255, 249, 232, .68), transparent 55%),
    linear-gradient(125deg, #DCC7B5, #BFA48F);
  color: var(--champagne-ink);
}
.menu-inner p { color: var(--champagne-muted); }
.menu-open .menu-toggle {
  background: var(--champagne-paper);
  color: var(--champagne-ink);
  border-color: var(--champagne-line);
}
.menu-open .site-header { background: transparent; box-shadow: none; }
.intro {
  background:
    radial-gradient(ellipse at 12% 22%, rgba(255, 252, 243, .72), transparent 60%),
    linear-gradient(120deg, #ECE0D4, #E1CFBF);
  box-shadow: inset 0 1px rgba(255, 255, 255, .42), inset 0 -1px rgba(111, 78, 48, .12);
}
.collection {
  background:
    radial-gradient(ellipse at 82% 10%, rgba(253, 246, 232, .58), transparent 47%),
    linear-gradient(160deg, #D5BEA9, #E9DCCF 48%, #DCC6B2);
}
.manifesto {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(171, 125, 77, .2), transparent 56%),
    linear-gradient(118deg, #2F251F, #4B382A);
  color: #F3ECE4;
  border-block: 1px solid rgba(204, 165, 113, .35);
  box-shadow: inset 0 1px rgba(255, 231, 195, .08);
}
.approach {
  background: linear-gradient(125deg, #ECE1D6, #E1CDBA);
  box-shadow: inset 0 -1px rgba(111, 78, 48, .15);
}
.visit {
  background:
    radial-gradient(ellipse at 14% 15%, rgba(255, 249, 236, .6), transparent 50%),
    linear-gradient(132deg, #DCC6B2, #C5A88F 100%);
}
.site-footer {
  background: linear-gradient(115deg, #443328, #30251F);
  color: #F3ECE4;
  border-top: 1px solid rgba(204, 165, 113, .42);
}
.footer-bottom {
  color: #CDBBAA;
  border-top-color: rgba(219, 180, 132, .25);
}
.visit-actions a, .visit-note, .section-marker span:first-child { border-color: rgba(81, 56, 33, .42); }
.visit-note {
  background: linear-gradient(135deg, #FBF7F0, #EBDCCB);
  color: var(--champagne-ink);
  border-color: rgba(154, 113, 72, .48);
  box-shadow: var(--atelier-shadow), inset 0 0 0 6px rgba(255, 250, 239, .52),
    inset 0 0 0 7px rgba(153, 111, 66, .18);
}
.gallery-image, .gallery.has-products .gallery-image {
  background: linear-gradient(140deg, #F5EADF, #CFB092);
  border-color: rgba(122, 84, 48, .35);
  outline: 1px solid rgba(247, 232, 207, .48);
  outline-offset: -9px;
  box-shadow: 0 20px 45px rgba(68, 43, 27, .13), 0 3px 8px rgba(68, 43, 27, .06);
}
.gallery-card:hover .gallery-image {
  box-shadow: 0 30px 60px rgba(68, 43, 27, .24), 0 6px 16px rgba(68, 43, 27, .1);
}
.card-details, .card-details strong { color: var(--champagne-ink); }
.card-details > span:first-child, .collection-end > span { color: var(--champagne-accent); }
.rates {
  background:
    radial-gradient(ellipse at 15% 70%, rgba(246, 235, 216, .64), transparent 55%),
    linear-gradient(135deg, #CEB29A, #DDC6B0);
  border-block: 1px solid rgba(122, 84, 48, .18);
}
.rates-panel {
  background: linear-gradient(145deg, #FCF8F1, #F1E6D8);
  color: var(--champagne-ink);
  border: 1px solid #B69670;
  border-radius: 2px;
  box-shadow: 0 28px 65px rgba(70, 44, 25, .15), inset 0 1px rgba(255, 255, 255, .8),
    inset 0 0 0 6px rgba(255, 250, 239, .45), inset 0 0 0 7px rgba(149, 107, 60, .15);
}
.rates-panel-top { color: #67492D; border-bottom-color: #D3BFAE; }
.rates-table, .rates-table td, .rates-table tbody th { color: var(--champagne-ink); }
.rates-table thead th, .rates-table .rates-loading, .rates-panel-bottom { color: var(--champagne-muted); }
.rates-table th, .rates-table td { border-bottom-color: #D3BFAE; }
.rates-table td:last-child, .rates-panel-bottom a, .rates-refresh { color: #67492D; }
.rates-panel-bottom a, .rates-refresh { border-color: #AA8B70; }
.rates-refresh:hover { background: #EADBCD; }
.catalog-filters button {
  color: var(--champagne-ink);
  border-color: rgba(81, 56, 33, .3);
}
.catalog-filters button[aria-pressed=true] {
  background: var(--champagne-ink);
  border-color: var(--champagne-ink);
  color: var(--champagne-paper);
}
.catalog-search { color: var(--champagne-ink); border-bottom-color: #8D6E55; }
.catalog-search::placeholder { color: var(--champagne-muted); }
.product-dialog, .product-dialog-header {
  background: linear-gradient(140deg, #FBF6EE, #EDE0D1);
  color: var(--champagne-ink);
}
.product-dialog { border-color: #AC8E70; box-shadow: 0 30px 100px rgba(47, 32, 23, .48); }
.product-dialog::backdrop { background: rgba(47, 32, 23, .76); }
.product-dialog-header { border-bottom-color: #D6C1AF; }
.product-dialog-close { color: var(--champagne-ink); border-color: #B9A08A; }
.product-photo-area {
  background: radial-gradient(ellipse at 50% 30%, #F5EDE2, #DCC4AD);
}
.product-thumbnails button[aria-pressed=true] { border-color: #795637; }
.product-dialog-copy .eyebrow { color: #67492D; }
.product-metal, .product-description, .product-price-note, .product-share {
  color: var(--champagne-muted);
  border-color: #CBB29B;
}
.product-enquiry { background: var(--champagne-ink); color: var(--champagne-paper); }
.product-share-status { color: #59482F; }
.store-photo { border-color: #9D7E64; }
.visitor-request, .visitor-questions, .visitor-question-list details {
  border-color: rgba(106, 74, 44, .27);
  color: var(--champagne-ink);
}
.visitor-select-field label { color: var(--champagne-ink); }
.visitor-select-field select {
  background: var(--champagne-paper);
  color: var(--champagne-ink);
  border-color: #9D7E64;
  color-scheme: light;
}
.visitor-request-link { background: var(--champagne-ink); color: var(--champagne-paper); }
.visitor-request-link:hover { background: #4B382A; }
.contact-dock {
  background: linear-gradient(155deg, #FCF7ED, #E8D6C2);
  border-color: #AA8763;
  box-shadow: inset 0 1px rgba(255, 255, 255, .8), 0 12px 32px rgba(70, 44, 25, .22);
}
.contact-dock a { color: var(--champagne-ink); }
.contact-dock a + a { border-left-color: var(--champagne-line); }
.contact-dock .contact-dock-primary { color: var(--champagne-accent); }
.cursor { background: var(--champagne-accent); border-color: var(--champagne-accent); }
.cursor.is-hovering { background: transparent; }
.pointer-glow {
  background: radial-gradient(circle, rgba(255, 247, 220, .32), rgba(236, 192, 150, .16) 33%, transparent 65%);
}
/* The management panel shares the palette; security and data are untouched. */
.login-screen {
  background: radial-gradient(ellipse at 25% 45%, #E3D1BF, transparent 60%), var(--champagne);
  color: var(--champagne-ink);
}
.login-card > p:not(.eyebrow), .login-card label, .back-link, .login-foot {
  color: var(--champagne-muted);
}
.login-card em { color: #67492D; }
.login-card input { background: var(--champagne-paper); border-color: #9D7E64; color: var(--champagne-ink); }
.login-card .primary { background: var(--champagne-ink); color: var(--champagne-paper); }
.login-card .form-error { color: #853E30; }
.back-link { border-bottom-color: #94745B; }
.sidebar {
  background: radial-gradient(circle at 100% 0, rgba(255, 243, 217, .3), transparent 45%), var(--champagne);
  color: var(--champagne-ink);
}
.sidebar .eyebrow, .sidebar nav span { color: var(--champagne-accent); }
.sidebar nav button, .sidebar-bottom button, .sidebar-bottom small { color: var(--champagne-muted); }
.sidebar nav button:hover { background: #D8C2AE; }
.sidebar nav button[aria-current=page] {
  background: #4B382A;
  color: var(--champagne-paper);
  border-left-color: #DCC095;
}
.sidebar nav button[aria-current=page] span { color: #E7CAA0; }
.sidebar-bottom a { border-bottom-color: var(--champagne-line); }
.admin-main { background: #F1E6DC; }
.primary:hover { background: #4B382A; }
input:not([type=checkbox]):not([type=file]), select, textarea {
  border-color: #C8AE98;
}
fieldset, .panel { background: rgba(255, 248, 239, .45); }
.product-thumb { background: #E2CFBE; }
.product-actions button { color: var(--champagne-muted); }
.empty-state { background: radial-gradient(ellipse, #E7D5C3, transparent 70%); border-color: #C3A78E; }
.media-tile { background: #E7D5C3; }
.notice { border-color: #B29A80; background: var(--champagne-paper); box-shadow: 0 12px 40px rgba(70, 44, 25, .17); }
.editor-dialog { border-color: #AA8A6A; box-shadow: 0 30px 140px rgba(47, 32, 23, .45); }
.editor-dialog::backdrop { background: rgba(47, 32, 23, .73); }
@supports (backdrop-filter: blur(12px)) {
  .site-header.is-scrolled { background: rgba(232, 215, 200, .88); }
}
@media (max-width: 700px) {
  .hero { background: radial-gradient(ellipse at 58% 64%, rgba(248, 230, 203, .62), transparent 52%), linear-gradient(160deg, #EDE1D6, #BFA48F 63%, #C9B3A0); }
  .site-header { border-bottom-color: var(--champagne-line); }
}

/* Precision details: quiet metal, paper-like surfaces and a single dark story band. */
.hero-title { text-shadow: 0 1px rgba(255, 248, 230, .28); }
.hero-kicker { color: #63462D; }
.hero-meta { border-top-color: rgba(108, 74, 43, .28); }
.scene-caption > span { color: #4A372A; }
.scene-caption i { background: #8F6236; box-shadow: 0 0 12px rgba(161, 112, 57, .38); }
.header-call {
  background: linear-gradient(145deg, rgba(250, 243, 230, .55), rgba(218, 194, 171, .32));
  border-color: rgba(111, 78, 48, .45);
  box-shadow: inset 0 1px rgba(255, 255, 255, .42);
}
.header-call:hover { background: var(--atelier-espresso); color: #F3ECE4; }
.brand img, .collection-mark { filter: drop-shadow(0 1px 1px rgba(99, 61, 26, .18)); }
.section-marker { color: #64472D; }
.section-marker span:first-child {
  background: linear-gradient(145deg, rgba(249, 241, 224, .6), rgba(205, 172, 140, .2));
  border-color: rgba(122, 84, 48, .42);
  box-shadow: inset 0 1px rgba(255, 255, 255, .42);
}
.rates-panel-top { padding-bottom: 23px; color: #6C4D2B; border-bottom-color: #CDB494; }
.rates-table thead th { color: #66503C; }
.rates-table tbody tr:nth-child(even) { background: rgba(186, 145, 96, .035); }
.rates-table th, .rates-table td { border-bottom-color: rgba(157, 117, 72, .27); }
.rates-table td:last-child { color: #76512A; }
.rates-panel-bottom { padding-top: 20px; }
.rates-refresh {
  background: rgba(245, 232, 211, .4);
  border-color: #B2926C;
  box-shadow: inset 0 1px rgba(255, 255, 255, .5);
}
.rates-refresh:hover { background: #E9D7BF; }
.card-details {
  padding-block: 21px 18px;
  border-bottom: 1px solid rgba(119, 79, 44, .23);
}
.card-details > span:first-child { color: #73512F; }
.catalog-tools {
  padding: 20px 22px;
  background: rgba(249, 240, 225, .32);
  border: 1px solid rgba(119, 79, 44, .23);
}
.catalog-filters button { background: rgba(252, 246, 235, .35); }
.catalog-filters button[aria-pressed=true] {
  background: linear-gradient(135deg, #4A3729, #2E241E);
  color: #F3ECE4;
}
.catalog-search { border-bottom-color: #A48362; }
.manifesto .section-marker, .manifesto .eyebrow { color: #DAB58B; }
.manifesto .section-marker span:first-child {
  background: rgba(211, 168, 113, .06);
  border-color: rgba(221, 185, 140, .5);
  box-shadow: inset 0 1px rgba(255, 240, 213, .08);
}
.manifesto h2 { color: #F3ECE4; }
.manifesto h2 em { color: #D6AD7D; }
.manifesto .manifesto-bottom p { color: #DACABB; }
.manifesto .manifesto-rule { background: linear-gradient(90deg, #C9A077, rgba(201, 160, 119, .1)); }
.approach-step {
  padding: clamp(22px, 2.4vw, 38px);
  border: 1px solid rgba(119, 79, 44, .19);
  background: linear-gradient(145deg, rgba(253, 247, 236, .5), rgba(211, 184, 158, .18));
  box-shadow: inset 0 1px rgba(255, 255, 255, .55);
}
.approach-step > span { color: #74522F; }
.visitor-request {
  padding: clamp(24px, 3vw, 38px);
  background: linear-gradient(125deg, rgba(251, 245, 233, .57), rgba(211, 180, 148, .25));
  border: 1px solid rgba(119, 79, 44, .25);
  box-shadow: inset 0 1px rgba(255, 255, 255, .52);
}
.visitor-request-link, .product-enquiry {
  background: linear-gradient(135deg, #4A3729, #2E241E);
  color: var(--champagne-paper);
  box-shadow: inset 0 1px rgba(255, 235, 199, .14);
}
.visitor-request-link:hover, .product-enquiry:hover { background: #59412D; }
.visitor-select-field select { background: #F7EFE4; border-color: #AF8B65; }
.visitor-question-list details {
  padding-inline: 20px;
  background: rgba(247, 236, 220, .2);
}
.visitor-question-list details[open] { background: rgba(250, 241, 227, .48); }
.visitor-question-list summary svg { color: #7F5730; }
.product-dialog { border-color: #A58057; }
.product-dialog-header { border-bottom-color: rgba(151, 106, 60, .26); }
.product-dialog-close { border-color: #AC8B67; background: rgba(247, 238, 222, .5); }
.product-thumbnails button[aria-pressed=true] { border-color: #916333; }
.site-footer .footer-top a { color: #E5D2BB; border-bottom-color: #B99165; }
.site-footer .footer-bottom a { color: #D9C4AD; }
.site-footer a:hover { color: #F8E7CF; }
.site-footer a:focus-visible { outline-color: #DFC099; }
@media (max-width: 700px) {
  .gallery-image, .gallery.has-products .gallery-image { outline-offset: -6px; }
  .catalog-tools { padding: 18px 14px; }
  .visitor-request { padding: 24px 20px; }
  .visitor-question-list details { padding-inline: 12px; }
  .approach-step { padding: 24px 22px; }
}

/* Editorial typography: authentic serif italics and a quiet, readable hierarchy. */
#icerik {
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.7;
  font-kerning: normal;
}
.hero-title, .display-title, .manifesto h2, .approach-step h3,
.visitor-request h3, .visitor-questions h2, .card-details strong,
.gallery.has-products .card-details strong, .product-dialog-copy h2 {
  font-family: var(--serif);
  font-weight: 500;
  font-kerning: normal;
  font-synthesis: none;
  font-feature-settings: "kern" 1, "liga" 1;
  text-rendering: optimizeLegibility;
  text-wrap: balance;
}
.hero-title {
  font-size: clamp(68px, 7.1vw, 126px);
  line-height: .98;
  letter-spacing: -.045em;
}
.hero-title em, .display-title em, .manifesto h2 em, .visitor-questions h2 em {
  font-style: italic;
  font-weight: 400;
  letter-spacing: -.035em;
}
.display-title {
  font-size: clamp(50px, 5.9vw, 100px);
  line-height: 1.04;
  letter-spacing: -.04em;
}
.manifesto h2 {
  font-size: clamp(64px, 8.2vw, 132px);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.hero-description, .body-copy, .manifesto .manifesto-bottom p,
.visitor-request-copy > p:last-child, .visitor-questions-heading > p:last-child {
  font-family: var(--sans);
  font-size: clamp(15px, 1.12vw, 17px);
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: .005em;
  text-wrap: pretty;
}
.hero-description { max-width: 36ch; line-height: 1.8; }
.body-copy { max-width: 54ch; }
#icerik .eyebrow, .hero-kicker {
  font-family: var(--sans);
  font-size: 11px;
  line-height: 1.7;
  font-weight: 600;
  letter-spacing: .17em;
}
.section-marker {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .16em;
}
.section-marker span:first-child { font-size: 10px; font-variant-numeric: lining-nums tabular-nums; }
.header-nav a { font-size: 13px; font-weight: 500; letter-spacing: .015em; }
.header-call, .menu-toggle-text { font-size: 11px; font-weight: 600; letter-spacing: .13em; }
.menu-inner > a { font-weight: 500; line-height: 1.12; letter-spacing: -.035em; }
.menu-inner > a span { font-variant-numeric: lining-nums tabular-nums; }
.menu-inner p { font-size: clamp(22px, 2vw, 28px); }
.hero-link, .hero-secondary {
  font-size: 12px;
  line-height: 1.5;
  font-weight: 600;
  letter-spacing: .11em;
}
.hero-meta { font-size: 10px; font-weight: 500; letter-spacing: .13em; }
.scene-caption > span { font-size: 10px; letter-spacing: .15em; }
.card-details > span:first-child, .gallery.has-products .card-details > span:first-child {
  font-size: 10px;
  font-weight: 600;
  line-height: 1.65;
  letter-spacing: .13em;
}
.card-details strong, .gallery.has-products .card-details strong {
  font-size: clamp(27px, 2.25vw, 38px);
  line-height: 1.15;
  letter-spacing: -.025em;
}
.gallery.has-products .card-details small { font-size: 12px; line-height: 1.75; letter-spacing: .01em; }
.collection-end > span { font-size: 10px; letter-spacing: .14em; }
.collection-end .text-link { font-size: 11px; letter-spacing: .12em; }
.approach-step h3 { font-size: clamp(30px, 2.6vw, 43px); line-height: 1.1; letter-spacing: -.025em; }
.approach-step > span { font-size: 10px; font-weight: 600; letter-spacing: .15em; }
.approach-step p { font-size: 14px; line-height: 1.9; letter-spacing: .005em; }
.visitor-request h3 { font-size: clamp(32px, 3vw, 46px); line-height: 1.12; letter-spacing: -.03em; }
.visitor-questions h2 { font-size: clamp(42px, 4.5vw, 68px); line-height: 1.08; letter-spacing: -.035em; }
.visitor-question-list summary { font-size: 16px; font-weight: 500; line-height: 1.65; letter-spacing: -.005em; }
.visitor-answer p { font-size: 14px; line-height: 1.9; text-wrap: pretty; }
.visitor-request-note, .rates-disclaimer { font-size: 12px; line-height: 1.8; letter-spacing: .005em; }
.rates-panel-top { font-size: 11px; font-weight: 600; letter-spacing: .12em; }
.rates-table {
  font-family: var(--sans);
  font-variant-numeric: lining-nums tabular-nums;
  font-feature-settings: "lnum" 1, "tnum" 1;
}
.rates-table thead th { font-size: 11px; font-weight: 500; line-height: 1.6; letter-spacing: .09em; }
.rates-table td, .rates-table tbody th {
  font-size: clamp(14px, 1.16vw, 18px);
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: -.015em;
}
.rates-table td:last-child { font-weight: 600; }
.rates-panel-bottom { font-size: 12px; line-height: 1.75; }
.address-link { font-size: clamp(16px, 1.35vw, 19px); line-height: 1.7; letter-spacing: -.01em; }
.visit-actions a { font-size: 12px; font-weight: 600; letter-spacing: .07em; }
.visit-note p { font-size: 15px; line-height: 1.85; }
.visit-note .text-link { font-size: 11px; letter-spacing: .12em; }
.product-dialog-copy h2 { font-size: clamp(38px, 4vw, 60px); line-height: 1.08; letter-spacing: -.035em; }
.product-description { font-size: 14px; line-height: 1.9; }
.product-metal { font-size: 13px; line-height: 1.75; }
.product-price-note { font-size: 12px; line-height: 1.75; }
.product-enquiry, .visitor-request-link { font-size: 13px; font-weight: 600; letter-spacing: .015em; }
.site-footer .footer-top a { font-size: 14px; letter-spacing: .015em; }
.footer-bottom { flex-wrap: wrap; row-gap: 14px; font-size: 10px; font-weight: 500; letter-spacing: .1em; }

@media (min-width: 701px) and (max-width: 1000px) {
  .hero-title { font-size: clamp(54px, 7.2vw, 74px); }
}
@media (min-width: 901px) and (max-width: 1100px) {
  .header-nav a { font-size: 12px; }
}
@media (max-width: 700px) {
  .hero-title { font-size: clamp(56px, 14vw, 88px); line-height: 1; letter-spacing: -.035em; }
  .display-title { font-size: clamp(44px, 11vw, 64px); line-height: 1.08; }
  .manifesto h2 { font-size: clamp(44px, 11.5vw, 70px); line-height: 1.07; }
  .hero-description, .body-copy, .manifesto .manifesto-bottom p { font-size: 15px; line-height: 1.85; }
  .hero-kicker, #icerik .eyebrow { font-size: 10px; letter-spacing: .14em; }
  .hero-meta { font-size: 9px; letter-spacing: .07em; }
  .section-marker { font-size: 10px; letter-spacing: .13em; }
  .card-details strong, .gallery.has-products .card-details strong {
    font-size: clamp(25px, 6.8vw, 32px);
    line-height: 1.16;
  }
  .card-details > span:first-child, .gallery.has-products .card-details > span:first-child {
    font-size: 9px;
    letter-spacing: .09em;
  }
  .approach-step h3 { font-size: 34px; }
  .visitor-questions h2 { font-size: clamp(40px, 10.5vw, 58px); }
  .visitor-question-list summary { font-size: 15px; line-height: 1.7; }
  .rates-table td, .rates-table tbody th { font-size: clamp(12px, 3.5vw, 15px); }
  .rates-table thead th { font-size: 10px; letter-spacing: .045em; }
  .rates-panel-bottom { font-size: 12px; }
  .site-footer .footer-top a { font-size: 13px; }
  .footer-bottom { font-size: 10px; letter-spacing: .07em; }
}
