/* hosteasy/domain-individual-page.css â€” PAGE-specific CSS for the Host Easy
   ".in Domain Name Registration" page (the live in-domain-price.php).
   =========================================================================
   STYLE-ONLY. This file themes the user's PASTED live HTML unchanged â€” no class or
   tag is invented, the design is pure CSS (per req_20260813_110344_f65bff: "i posted
   original live html content â€¦ strictly i asked you dont add any tags or class names â€”
   exist html rework and give best design output"). It keys strictly to the classes
   that ship in that markup:
     .content_area                â†’ outer page band (centres the column)
     .content                     â†’ the content column (hero + form + table + prose)
     .content > h1                â†’ the ".in Domain Name Registration" hero heading
     .content > p                 â†’ the lead intro (first) + closing prose (last)
     .search_domain               â†’ the real domain-search form (input + TLD select +
                                     Submit), themed as one elegant search bar
       .search_domain_txt / _slct / _btn / .error_alert â†’ its fields, CTA + error line
     .table                       â†’ the price section (its h2 heading + the table card)
     .table table / th / td       â†’ the 1â€“4 year price table as a rounded price card
   The user's own inline-styled promo (#1fa8d2) / struck-was (#fbb147) price <span>s
   are their HTML and are left exactly as pasted â€” this file does not fight them.
   Loads the shared design system first (tokens + base + header/nav/footer + shared
   responsive), then adds ONLY this page's sections. Every value is a --ho-* token
   from brand-tokens.css; this file writes no raw hex of its own. */
@import "common.css";

/* page rhythm â€” adopt the home page's ONE slightly-smaller, EVEN vertical step so
   the hero â†’ search â†’ price table â†’ closing prose bands read even and a touch
   tighter, matching home-page.php. Scoped HERE (this sheet loads only on this
   page), so the global token is untouched elsewhere (mirrors home-page.css). */
:root{--ho-s-section:clamp(34px,4.6vw,66px)}

/* â”€â”€ a11y skip-link (page chrome; matches the sibling redesigned pages) â”€â”€â”€â”€â”€â”€â”€ */
.skip-link{position:absolute;left:var(--ho-s-3);top:-48px;z-index:100;background:var(--ho-card);
  color:var(--ho-brand-text);border:1px solid var(--ho-line-2);border-radius:var(--ho-r-sm);
  padding:8px var(--ho-s-4);font-size:var(--ho-fs-sm);font-weight:var(--ho-fw-semi);
  transition:top var(--ho-dur) var(--ho-ease)}
.skip-link:focus{top:var(--ho-s-3)}

/* â”€â”€ header â€” no page override: the shared white header (common.css) is used as-is
   (req_20260825_104055: "i did not mention the header background (revert back old)").
   An earlier pass had painted the whole top bar blue; that was never asked for, so
   the override is removed and the site's standard header returns. â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* â”€â”€ page band + content column â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.content_area{background:var(--ho-surface)}
.content{max-width:1040px;margin:0 auto;padding:var(--ho-s-section) var(--ho-s-5)}

/* â”€â”€ hero heading â€” CENTERED, mirroring home's .banner_content h1 (which inherits
   text-align:center from .banner_content) per req "top h1 should be center
   alignment". Sits on the full-bleed blue hero band defined below; width is left
   auto so that band's full-bleed recipe can span it edge-to-edge. Same hero
   size/weight/tracking tokens. â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.content > h1{font-size:var(--ho-fs-hero);line-height:var(--ho-lh-tight);letter-spacing:var(--ho-tracking-tight);
  color:var(--ho-hero-ink);font-weight:var(--ho-fw-black);text-align:center;text-wrap:balance;
  margin:0 0 var(--ho-s-4)}

/* â”€â”€ paragraphs â€” left-aligned and full-measure, mirroring home's .banner_content
   > p (centred cap + 74ch measure dropped per this "common changes" pass): the
   lead intro (first) and closing prose (last) read flush-left, filling the full
   content column. Both are plain <p> in the paste. â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.content > p{width:100%;max-width:none;text-align:left;color:var(--ho-body);
  font-size:var(--ho-fs-md);line-height:var(--ho-lh);text-wrap:pretty;margin:0 0 var(--ho-s-6)}
.content > p:first-of-type{color:var(--ho-muted)}
.content > p:last-of-type{margin:var(--ho-s-7) 0 var(--ho-s-2)}

/* â”€â”€ hero band â€” FULL-WIDTH blue band, matching home-page.php's `.banner`
   (req: "background: var(--ho-hero-grad); full width blue background â€” refer the
   home page"). Home paints --ho-hero-grad edge-to-edge across the WHOLE viewport
   (`.banner{background:var(--ho-hero-grad);border-bottom:1px solid var(--ho-sky-100)}`);
   the earlier pass only bled the wash to .content's 1040px column edge. This page has
   no hero wrapper (the live DOM is pinned â€” no added tag/class), so the same wash is
   applied to the two real top elements (.content > h1 + the intro <p>) with the
   standard full-bleed recipe used on the sibling domain-price-list-page.css:
   `margin-inline:calc(50% - 50vw)` + auto width makes each element span the full
   100vw, and `padding-inline:max(s5, 50vw - 520px)` re-insets the text to the 1040px
   content column (520 = 1040/2). The two share the wash with the inter-element gap
   collapsed (H1 margin-bottom:0, intro margin-top:0) so they read as ONE continuous
   blue band; the H1 still pulls up under the nav (negative top margin) and the intro
   closes the band with the +20px bottom room + a sky-100 hairline. Dark home inks
   (--ho-hero-ink / --ho-sky-800) stay AA-safe on the pale cyan wash, and the search
   card still laps up over the band's lower edge (see .search_domain). â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.content > h1,
.content > p:first-of-type{background:var(--ho-hero-grad);width:auto;
  margin-inline:calc(50% - 50vw);
  padding-inline:max(var(--ho-s-5),calc(50vw - 520px))}
.content > h1{color:var(--ho-hero-ink);
  margin-top:calc(-1 * var(--ho-s-section));padding-top:var(--ho-s-section);
  padding-bottom:var(--ho-s-4);margin-bottom:0}
.content > p:first-of-type{color:var(--ho-sky-800);
  margin-top:0;padding-bottom:calc(var(--ho-s-section) + 20px);margin-bottom:0;
  border-bottom:1px solid var(--ho-sky-100)}

/* â”€â”€ the domain search form (.search_domain) â€” one elegant search bar â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Retuned to speak home-page.css's `.search_form` language (per this edit: "design
   need look like hosteasy/home-page.php") so the two pages' search bars read as
   ONE component: a wider (920px) white card at the stronger --ho-e-3 elevation,
   --ho-s-3 padding, a full-height input at 14px, the TLD <select> on the --ho-tile
   ground at --ho-fs-md, and the single gold Submit at --ho-fw-black / .03em tracking
   with the brightness(1.04) hover. It's the page's ONE primary action (gold reserved
   for the single primary action) and still collapses to a clean stack â‰¤640px. The
   card is PULLED UP to lap over the hero band's lower edge â€” home's `.search_form`
   idiom (`margin:calc(-1 * var(--ho-s-6)) auto â€¦;position:relative;z-index:10`) â€” so
   the band + search bar read as ONE component instead of the bar sitting below a
   hard stop. */
.search_domain{max-width:920px;margin:calc(-1 * var(--ho-s-6)) auto var(--ho-s-7);
  position:relative;z-index:10}
.search_domain form{display:flex;gap:var(--ho-s-2);align-items:stretch;
  background:var(--ho-card);border:1px solid var(--ho-line);border-radius:var(--ho-r-xl);
  box-shadow:var(--ho-e-3);padding:var(--ho-s-3)}
.search_domain form > div:first-child{flex:1 1 auto;display:flex}
.search_domain form > div{display:flex}

.search_domain_txt{flex:1 1 auto;width:100%;height:100%;min-width:0;border:0;background:transparent;
  padding:14px var(--ho-s-4);font-size:var(--ho-fs-md);color:var(--ho-ink);border-radius:var(--ho-r);outline:none}
.search_domain_txt::placeholder{color:var(--ho-muted)}
.search_domain_txt:focus{outline:0}

.search_domain_slct{height:100%;border:1px solid var(--ho-line-2);background:var(--ho-tile);
  color:var(--ho-brand-text);font-weight:var(--ho-fw-semi);font-size:var(--ho-fs-md);
  padding:0 var(--ho-s-3);border-radius:var(--ho-r);cursor:pointer;
  transition:border-color var(--ho-dur) var(--ho-ease),background var(--ho-dur) var(--ho-ease)}
.search_domain_slct:hover{border-color:var(--ho-sky-300)}
.search_domain_slct:focus-visible{outline:2px solid var(--ho-brand);outline-offset:1px}

.search_domain_btn{height:100%;border:1px solid var(--ho-gold-border);background:var(--ho-gold-grad);
  color:var(--ho-gold-ink);font-weight:var(--ho-fw-black);font-size:var(--ho-fs-base);
  letter-spacing:.03em;padding:0 var(--ho-s-6);border-radius:var(--ho-r);
  cursor:pointer;white-space:nowrap;transition:filter var(--ho-dur) var(--ho-ease)}
.search_domain_btn:hover{filter:brightness(1.04)}
.search_domain_btn:focus-visible{outline:2px solid var(--ho-gold-border);outline-offset:2px}

.error_alert{margin:var(--ho-s-3) auto 0;
  color:var(--ho-danger);background:var(--ho-danger-soft);border:1px solid var(--ho-danger);
  border-radius:var(--ho-r-sm);padding:var(--ho-s-2) var(--ho-s-4);font-size:var(--ho-fs-sm);
  text-align:center}

/* â”€â”€ price section (.table wraps the h2 heading + the price table) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   The wrapper just centres the block; the <h2> is the section heading and the
   <table> itself is the rounded, softly-elevated price card. */
.table{max-width:860px;margin:0 auto var(--ho-s-7);text-align:center}
/* section heading aligned to home's card-heading scale (--ho-fs-xl / --ho-fw-black)
   so the price-section title reads like home's .home_plans h2 â€” one system. */
.table h2{font-size:var(--ho-fs-xl);font-weight:var(--ho-fw-black);color:var(--ho-ink);
  letter-spacing:var(--ho-tracking-tight);text-wrap:balance;margin:0 0 var(--ho-s-5)}

.table table{width:100%;border-collapse:collapse;font-size:var(--ho-fs-sm);text-align:center;
  background:var(--ho-card);border:1px solid var(--ho-line);border-radius:var(--ho-r-xl);
  box-shadow:var(--ho-e-2);overflow:hidden}

/* header row â€” soft cyan gradient band, uppercase small caps, cyan ink (AA âœ“) */
.table table th{background:linear-gradient(180deg,var(--ho-sky-100),var(--ho-tint-sky));
  color:var(--ho-brand-text);font-weight:var(--ho-fw-bold);font-size:var(--ho-fs-xs);
  letter-spacing:.05em;text-transform:uppercase;text-align:center;
  padding:var(--ho-s-4) var(--ho-s-3);border-bottom:1px solid var(--ho-sky-200);white-space:nowrap}
.table table th:first-child{text-align:left;padding-left:var(--ho-s-5)}

/* body cells â€” quiet grid, centred numerics, roomy rows */
.table table td{padding:var(--ho-s-4) var(--ho-s-3);text-align:center;color:var(--ho-body);
  border-top:1px solid var(--ho-line);vertical-align:middle;white-space:nowrap}

/* first column = the period: bold brand ink, left-aligned anchor for the row */
.table table tr td:first-child{text-align:left;padding-left:var(--ho-s-5);
  font-weight:var(--ho-fw-bold);color:var(--ho-brand-text);font-size:var(--ho-fs-base)}

/* zebra + hover â€” subtle warmth on alternate rows, a soft cyan wash on hover.
   Every period row is treated equally (the original table gives no row special
   emphasis, so none is invented here). */
.table table tr:nth-child(even) td{background:var(--ho-surface)}
.table table tr:hover td{background:var(--ho-sky-50)}

/* â”€â”€ page responsive â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
/* Tablet: keep the search bar a single row as long as it fits, then let the TLD
   select + button wrap under the input. */
@media (max-width:640px){
  /* soften the pull-up so the card doesn't crowd the stacked fields (home's
     `.search_form{margin-top:calc(-1 * var(--ho-s-4))}` at this breakpoint). */
  .search_domain{margin-top:calc(-1 * var(--ho-s-4))}
  .search_domain form{flex-direction:column;gap:var(--ho-s-3)}
  .search_domain form > div,.search_domain form > div:first-child{flex:1 1 auto;width:100%}
  .search_domain_txt{border:1px solid var(--ho-line-2);border-radius:var(--ho-r);padding:13px var(--ho-s-4)}
  .search_domain_slct{width:100%;height:auto;padding:13px var(--ho-s-3);text-align:center}
  .search_domain_btn{width:100%;height:auto;padding:14px;border-radius:var(--ho-r);text-align:center}
}
/* Narrow: let the price table scroll sideways inside its card rather than crushing
   the money columns. */
@media (max-width:768px){
  .table{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .table table{min-width:520px}
  .table table th,.table table td{padding:var(--ho-s-3) var(--ho-s-2)}
  .table table th:first-child,.table table tr td:first-child{padding-left:var(--ho-s-4)}
}

/* page-specific reduced-motion (site-wide guard lives in common.css) */
@media (prefers-reduced-motion: reduce){
  .table table tr:hover td{background:var(--ho-card)}
  .search_domain_btn:hover{transform:none}
}
